Подпрограмма: Напишите функцию для вычисления значения y по заданной формуле - Pascal
Формулировка задачи:
Напишите функцию для вычисления значения y.
у = 2x^2, если x ≤ 1,
y = x+1/3, если 1 ≤ x≤8,
y = √sin^2 x, если x ≥ 8.
Решение задачи: «Подпрограмма: Напишите функцию для вычисления значения y по заданной формуле»
textual
Листинг программы
{$MODE TP}
function Y(const x: Single): Double;
var
Result: Double;
begin
if (x <= 1) //уточнить знак
then
Result := 2 * Sqr(x)
else
if (x <= 8) //уточнить знак
then
Result := x + 1 / 3
else
Result := x; //уточнить формулу
Y := Result;
end;
var
x: Single;
begin
Write('Input x='); ReadLn(x);
WriteLn('Y=', Y(x):0:2);
end.
Объяснение кода листинга программы
- Объявляется функция
Yс аргументомxтипа Single и возвращаемым значением типа Double. - Внутри функции объявляется переменная
Resultтипа Double. - Проверяется условие: если
xменьше или равен 1, то - ПрисваиваетсяResultзначение 2 умножить на квадратx(2 * x^2). - Если предыдущее условие не выполнено, то проверяется следующее условие: если
xменьше или равен 8, то - ПрисваиваетсяResultзначение x плюс 1 делить на 3 (x + 1/3). - Если ни одно из предыдущих условий не выполнено, то
- Присваивается
Resultзначениеx. - Возвращается значение
Resultв качестве результата функции. - Объявляется переменная
xтипа Single. - Пользователю предлагается ввести значение для переменной
x. - Выводится значение функции
Y(x)с округлением до двух знаков после запятой.