Составив соответствующие рекуррентные соотношение, вычислите значения выражений: - Pascal
Формулировка задачи:
Составив соответствующие рекуррентные соотношение, вычислите значения выражений:
sin(x)+sin((sin(x))+...+sin(sin(...sin(x)))
Решение задачи: «Составив соответствующие рекуррентные соотношение, вычислите значения выражений:»
textual
Листинг программы
function Rec(x:real;n:integer):real;
begin
if n=1 then Rec:=sin(x) else Rec:=sin(Rec(x,n-1));
end;
var x:real;
n:integer;
begin
write('x=');
readln(x);
repeat
write('Введите n=');
readln(n);
until n>0;
write('Результат=',Rec(x,n):0:5);
end.
Объяснение кода листинга программы
- Создается функция Rec с параметрами x (вещественное число) и n (целое число).
- Если n равно 1, то значение функции Rec равно sin(x).
- В противном случае значение функции Rec равно sin(Rec(x, n-1)), то есть рекурсивный вызов функции Rec.
- Объявляются переменные x (вещественное число) и n (целое число).
- Пользователю выводится запрос на ввод значения x.
- Пользователь вводит значение x.
- Пользователю выводится запрос на ввод значения n.
- Пользователь вводит значение n, и программа продолжает запрашивать его, пока n не будет больше 0.
- Выводится значение функции Rec(x, n) с округлением до 5 знаков после запятой.