Вычислить сумму бесконечного ряда с точностью е - Free Pascal (207)
Формулировка задачи:
Листинг программы
- program test;
- var u, s :real;
- z, n :integer;
- fac :longint;
- i :byte;
- const e=1e-3; x=0.25;
- begin
- fac:=1;
- s:=0;
- n:=0;
- u:=(exp(ln(ln(3))*n)/fac)*exp(ln(x)*n);
- while abs(u)>e do
- begin
- for i:=2 to n do
- fac:=fac*i;
- s:=s+u;
- n:=n+1;
- u:=u+(exp(ln(ln(3))*n)/fac)*exp(ln(x)*n);
- end;
- writeln('s=', s:17:2);
- end.
Решение задачи: «Вычислить сумму бесконечного ряда с точностью е»
textual
Листинг программы
- n:=0;
- u:=1;//значение нулевого члена ряда
- s:=u;
- while abs(u)>e do
- begin
- n:=n+1;//увеличим номер
- u:=u*ln(3)*x/n;//домножим на ln(3)*x поделим на n получим ln^n(3)*x^n/n!
- s:=s+u;
- end;
Объяснение кода листинга программы
- Инициализируем переменные: n := 0; u := 1; // значение нулевого члена ряда s := u;
- Запускаем цикл, который будет выполняться до тех пор, пока абсолютное значение u не станет меньше заданной точности e: while abs(u) > e do
- Увеличиваем номер n на единицу: n := n + 1;
- Вычисляем новое значение u, используя формулу: u := u ln(3) x / n;
- Добавляем новое значение u к сумме s: s := s + u;
- Повторяем шаги 3-5 до тех пор, пока условие цикла не будет выполнено. В результате выполнения данного кода будет получена сумма бесконечного ряда с заданной точностью e.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д