Вычислить значение выражения - Turbo Pascal (33915)
Формулировка задачи:
Кто может сделать пожалуйста??
Решение задачи: «Вычислить значение выражения»
textual
Листинг программы
function f(n : integer) : real; begin if n < 0 then f := 0 else f := sqrt(n + f(n - 2)); end; var n : integer; begin write('n = '); readln(n); writeln(f(2*n+1)); end.
Объяснение кода листинга программы
- Создаётся функция f с одним параметром n типа integer.
- В условии if проверяется, что n меньше нуля. Если это так, то функция f возвращает 0.
- Иначе, функция f вызывает саму себя, передавая в качестве аргумента n минус 2.
- Результат вычисления f(n - 2) присваивается переменной f.
- В основной части программы объявляется переменная n типа integer.
- С помощью функции readln считывается значение переменной n с клавиатуры.
- Вычисляется значение выражения f(2*n+1).
- С помощью функции write выводится результат вычислений на экран.