Написать программу, которая по значениям аргумента Xi вычисляет значения функции Yi - Pascal
Формулировка задачи:
Помогите с прогой!
Написать программу, которая по значениям аргумента Xi вычисляет значения
функции Yi, заданной в виде графика. Значения функции вычисляются для
аргумента, изменяющегося в заданных пределах с заданным шагом.
С клавиатуры вводятся:
Xn - начальное значение аргумента
Xk - конечное значение аргумента
dX - шаг изменения аргумента
Результаты вычислений вывести в виде таблицы, состоящей из двух столбцов:
значений аргумента Xi и соответствующих им значений функции Yi. Таблица
должна иметь заголовочную строку.
Вот мой кривой код:
Program Graf; uses crt; VAR X, Xn, Xk, dX, y:real; BEGIN clrscr; Write(`Xn=`); read(Xn); Write(`Xk=`); read(Xk); Write(`dX=`); read(dX); Writeln; Writeln(`_________`); Writeln(`: X : Y :`); Writeln(`---------`); X=Xn; While X<Xk do begin; If (x>=-7) and (x<-6) then y:=1; If (x>=-6) and (x<-4) then y:=(-1/2)*x-2; If (x>=-4) and (x<0) then y:=sqrt(4-sqr(x+2)) If (x>=0) and (x<2) then y:=-sqrt(1-sqr(x-1)) If (x>=2) and (x<3) then y:=0; END; Writeln(x:0:10,``,y:0:10); x:=x+dx; Writeln (`pres ESC exit or pres Enter proceed`); Until readkey=#27; END.
Решение задачи: «Написать программу, которая по значениям аргумента Xi вычисляет значения функции Yi»
textual
Листинг программы
Program Graf; uses crt; VAR X, Xn, Xk, dX, y:real; k:byte; BEGIN clrscr; Write('Xn='); readln(Xn); Write('Xk='); readln(Xk); Write('dX='); readln(dX); Writeln; Writeln('-----------------'); Writeln(': X : Y :'); Writeln('-----------------'); X:=Xn; While X<=Xk do begin k:=0; If x<=-6 then y:=1 else If x<=-4 then y:=-x/2-2 else If x<=0 then y:=sqrt(4-sqr(x+2)) else If x<=2 then y:=-sqrt(1-sqr(x-1)) else y:=-x+2; Writeln(':',x:6:2,' :',y:6:2,' :'); x:=x+dx; end; Writeln('-----------------'); readkey; END.
Объяснение кода листинга программы
- Программа начинается с объявления переменных X, Xn, Xk, dX и y типа real. Также объявлен байт k.
- С помощью функции clrscr() экран очищается.
- Пользователю предлагается ввести значения Xn, Xk и dX.
- Значения Xn, Xk и dX сохраняются в соответствующих переменных.
- Выводится строка
-----------------
, чтобы разделить ввод пользователя и вывод программы. - Выводится строка
: X : Y :
, чтобы указать, что пользователь должен ввести значения X, Y и их значения. - В цикле while X <= Xk выполняется следующий блок кода:
7.1. Переменная k инициализируется значением 0.
7.2. Если значение X меньше или равно -6, то значение переменной y устанавливается равным 1.
7.3. Если значение X меньше или равно -4, то значение переменной y вычисляется как -x/2 - 2.
7.4. Если значение X меньше или равно 0, то значение переменной y вычисляется как sqrt(4 - sqr(x + 2)).
7.5. Если значение X меньше или равно 2, то значение переменной y вычисляется как -sqrt(1 - sqr(x — 1)).
7.6. Если значение X больше 2, то значение переменной y вычисляется как -x + 2.
7.7. Выводится строка
:
, за которой следуют значения X, Y и:
. 7.8. Значение X увеличивается на dX. - Выводится строка
-----------------
, чтобы разделить ввод пользователя и вывод программы. - Программа завершается с помощью функции readkey(), чтобы пользователь мог нажать любую клавишу для выхода из программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д