Для вычисления значения у составить функцию - PascalABC.NET
Формулировка задачи:
Протабулировать (вывести значение x и y) функцию на отрезке [a,b] шагом h. Для вычисления значения у составить функцию. Выполнить программу дважды различными a, b и h.
Решение задачи: «Для вычисления значения у составить функцию»
textual
Листинг программы
function y(x : real):real := (x < 0 ? -cos(x) : (x > pi ? sin(x)-1 : -1));
begin
var a := ReadLnReal('a =');
var b := ReadLnReal('b =');
var h := ReadLnReal('h =');
while a <= b do
begin
WriteLn( String.Format('y({0}) = {1}', a, y(a)) );
a += h;
end;
end.
Объяснение кода листинга программы
- Написана функция
y(x : real):real, которая принимает аргументxтипаrealи возвращает значение типаreal. - В функции используется тернарный оператор для определения значения функции
y(x). Еслиxменьше 0, то возвращается отрицательное значение функцииcos(x). Еслиxбольшеpi, то возвращается значение функцииsin(x)минус 1. В противном случае возвращается -1. - В основной части программы объявлены три переменные типа
real:a,b,h. Их значения считываются с помощью функцииReadLnRealи сохраняются в переменныхa,b,h. - Запускается цикл while, который выполняется до тех пор, пока значение переменной
aне станет больше значения переменнойb. - В каждой итерации цикла выводится сообщение вида
y(a) = <значение функции y(a)>, где<значение функции y(a)>— это вызов функцииy(a)с передачей значения переменнойaв качестве аргумента. - Значение переменной
aувеличивается на значение переменнойhпосле каждой итерации цикла. - После завершения цикла программа завершается.