Сложная формула - Pascal
Формулировка задачи:
Помогите пожалуйста написать формулу на паскале...
y=(e^-tg(x/2))/(sin(abs((1-x^2)/(sqrt(abs(cos^3*x^3))+2)))
Решение задачи: «Сложная формула»
textual
Листинг программы
uses crt; var x,y,ch,zn:real; begin clrscr; write('x='); readln(x); {определим ОДЗ} if(abs(x)=1)or(cos(x/2)=0)then write('Значение Y не определено') else begin ch:=exp(-sin(x/2)/cos(x/2));{чтобы не городить огород, вычислим числитель} zn:=sqrt(abs(sqr(cos(x*x*x))*cos(x*x*x))+2);{знаменатель} y:=ch/zn;{значение} write('y=',y:0:4); end; readln end.
Объяснение кода листинга программы
- В первой строке кода используется библиотека crt, которая является стандартной для языка Pascal.
- Переменные x, y, ch и zn объявлены как real, что означает, что они могут содержать числа с плавающей точкой.
- Функция clrscr используется для очистки экрана перед началом выполнения программы.
- В строке 7 происходит чтение значения переменной x с помощью функции readln.
- В строке 11 определяется условие ОДЗ (однозначное дифференциальное уравнение), которое проверяется с помощью операторов abs(x) и cos(x/2). Если abs(x) равно 1 или cos(x/2) равен 0, то выводится сообщение
Значение Y не определено
. - В строке 13 определяется значение переменной ch с помощью функции exp, которая вычисляет экспоненту.
- В строке 14 определяется значение переменной zn с помощью функции sqrt, которая вычисляет квадратный корень. Знаменатель для zn вычисляется как sqr(cos(xxx))cos(xx*x).
- В строке 15 определяется значение переменной y с помощью деления значения переменной ch на значение переменной zn.
- В строке 17 выводится значение переменной y с помощью функции write, используя формат вывода 0:0:4, чтобы отобразить его в виде десятичного числа с четырьмя знаками после запятой.
- В конце программы выводится символ новой строки с помощью функции readln, чтобы перейти к следующему вводу.