Вычислить сумму и найти число слагаемых, которые вошли в сумму - Turbo Pascal (29379)
Формулировка задачи:
Вычислить сумму и найти число слагаемых, которые вошли в сумму. Процесс вычислений требуется закончить, когда очередное слагаемое по модулю окажется меньше ε (это слагаемое при вычислении суммы уже не учитывать).
Решение задачи: «Вычислить сумму и найти число слагаемых, которые вошли в сумму»
textual
Листинг программы
- var x, eps, a, s: double;
- n: integer;
- begin
- repeat
- write('-1 <= x < 1; x = ');
- readln(x)
- until (-1 <= x) and (x < 1);
- repeat
- write('eps > 0; eps = ');
- readln(eps)
- until eps > 0;
- n := 0;
- a := -x / 3;
- s := a;
- while abs(a) >= eps do
- begin
- inc(n);
- a := (0.5 - n) / (n + 1.5) * x * x * a;
- s := s + a
- end;
- writeln('s = ', s:0:15, ', iteration: ', n + 1);
- readln
- end.
Объяснение кода листинга программы
- Создаются переменные x, eps, a, s типа double и n типа integer.
- В блоке repeat-until проверяется условие -1 <= x < 1. Если оно истинно, то считывается значение переменной x.
- В следующем блоке repeat-until проверяется условие eps > 0. Если оно истинно, то считывается значение переменной eps.
- Переменная n инициализируется значением 0.
- Переменная a инициализируется значением -x/3.
- Переменная s инициализируется значением a.
- Запускается цикл while, который выполняется до тех пор, пока abs(a) >= eps.
- В каждой итерации цикла значение переменной n увеличивается на 1, а переменная a вычисляется по формуле (0.5 - n) / (n + 1.5) x x * a.
- Значение переменной a добавляется к переменной s.
- После завершения цикла выводится значение переменной s и количество итераций, равное n + 1.
- Программа завершается после чтения пользовательского ввода с помощью readln.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д