Вычислить значение суммы бесконечного ряда - Free Pascal
Формулировка задачи:
Вычислить значение суммы бесконечного ряда S=1+xlna/1!+(xlna)2/2!+...+(xlna)n/n!+..с точностью до члена
ряда, меньшего ε=10-4, и значение функции (для проверки)
f=ax; учесть, что функция определена при 0,1 < = x < = 1. Вывес-
ти на экран значение указанной функции и значение суммы
ряда. Оба значения должны совпадать.
Решение задачи: «Вычислить значение суммы бесконечного ряда»
textual
Листинг программы
const eps = 0.0001; var s, r, si: Extended; x, a: Single; i: Byte; begin repeat Write('x(0.1<=x<=1)='); ReadLn(x); until ((x >= 0.1) And (x <= 1)); repeat Write('a(a>0)='); ReadLn(a); until (a > 0); r := x * Ln(a); si := 1; i := 0; s := 0; while (Abs(si) >= eps) do begin s := s + si; Inc(i); si := si * r / i; end; WriteLn('S=', s:0:4); WriteLn('F=', Exp(Ln(a) * x):0:4); end.
Объяснение кода листинга программы
- В начале кода объявлены константа eps со значением 0.0001 и переменные s, r, si, x, a, i типа Extended, Single, Byte соответственно.
- Далее идет цикл repeat, который будет выполняться до тех пор, пока не будет введено значение x, удовлетворяющее условию 0.1 <= x <= 1.
- После этого идет цикл repeat, который будет выполняться до тех пор, пока не будет введено значение a, большее нуля.
- Затем происходит вычисление значения r как произведения x и натурального логарифма a.
- Инициализируются переменные i и s значением 0, а переменная si значением 1.
- В цикле while, который будет выполняться до тех пор, пока значение si не станет меньше или равным eps, происходит вычисление значения s как суммы si и s.
- Переменная i увеличивается на единицу после каждой итерации цикла.
- Значение si обновляется как произведение r и логарифма i.
- После выхода из цикла while выводится значение s с точностью до 4 знаков после запятой.
- Затем вычисляется значение F как экспоненты произведения логарифма a и x.
- И выводится значение F с точностью до 4 знаков после запятой.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д