Рекуррентная формула - вычислить выражение - PascalABC.NET
Формулировка задачи:
Помогите вывести рекуррентную формулу, пожалуйста....
Решение задачи: «Рекуррентная формула - вычислить выражение»
textual
Листинг программы
var x,e,t,s:real; i:integer; begin e:=0.0000001; x:=2.12863; i:=0; t:=x; while abs(t)/(2*i+1)>e do begin i:=i+1; t:=t*x*x/(i+1); //рекуррентная часть A[n]=A[n-1]*x^2/(n-1) s:=s+t/(2*i+1); //делим на не рекуррентную часть формулы end; write('s=',s:0:4); end.
Объяснение кода листинга программы
- Объявлены четыре переменные: x, e, t, s (реальное число, число с плавающей точкой).
- Переменная i инициализируется значением 0 (целое число).
- Переменная t инициализируется значением x (реальное число).
- Задается условие цикла while, которое проверяет, что абсолютное значение t, деленное на (2*i+1), больше заданной точности e.
- В каждой итерации цикла значение переменной i увеличивается на единицу.
- Значение переменной t обновляется в соответствии с рекуррентной формулой A[n]=A[n-1]*x^2/(n-1), где A[n] - это значение переменной t в n-й итерации.
- Значение переменной s обновляется путем добавления значения переменной t, деленного на (2*i+1), к предыдущему значению переменной s.
- После окончания цикла выводится значение переменной s с точностью до четырех знаков после запятой.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д