Использование подпрограммы функции - Pascal ABC
Формулировка задачи:
Найти значение выражения , а оператор - функция имеет вид sin(uv)+e^-pv/w^2. Мы создаем подпрограмму - функцию, зависящую от одного формального параметра u,которая вычисляет f=sin(uv)+e^-pv/w^2, а затем в теле основной программы ищем значение выражения в виде z:=f(a)*1/f(b).
Решение задачи: «Использование подпрограммы функции»
textual
Листинг программы
function f(u, v, p, w: real): real; begin f := sin(u * v) + exp(-p * v) / w / w end; var a, b, x, y, z: real; begin write('a = '); readln(a); write('b = '); readln(b); write('x = '); readln(x); write('y = '); readln(y); z := f(b, x, a, y) / (2 - f(a, y, b, x)); write('z = ', z) end.
Объяснение кода листинга программы
Список элементов кода:
- Объявление функции f(u, v, p, w: real): real;
- Определение функции f(u, v, p, w: real): real;
- Ввод переменных a, b, x, y, z: real;
- Ввод значения переменной a;
- Ввод значения переменной b;
- Ввод значения переменной x;
- Ввод значения переменной y;
- Вычисление значения переменной z;
- Вывод значения переменной z. Код выполняет следующие действия:
- Функция f(u, v, p, w: real): real; объявляет функцию с четырьмя аргументами типа real и возвращаемым значением типа real.
- Функция f(u, v, p, w: real): real; определяет функцию с четырьмя аргументами типа real и возвращаемым значением типа real.
- Переменные a, b, x, y, z: real; объявляют пять переменных типа real.
- Команды write('a = '); и readln(a); выводят сообщение и считывают значение переменной a.
- Аналогично, для переменных b, x, y.
- Переменная z вычисляется как результат деления значения функции f(b, x, a, y) на значение выражения 2 - f(a, y, b, x).
- Команда write('z = ', z) выводит сообщение и значение переменной z.