Найти частичную сумму ряда - Pascal ABC (12825)
Формулировка задачи:
Дан ряд:
1+1/2+1/4+1/8+...
Найти частичную сумму ряда.
Ряд сводится к значению 2.
Помогите, пожалуйста, разобраться, как это вообще делается???
Я тот еще чайник в этом.:)
Решение задачи: «Найти частичную сумму ряда»
textual
Листинг программы
var e,n,t,s:real;
begin
repeat
write('Введите точность 0<e<1 e=');
readln(e);
until(e>0)and(e<1);
n:=1;
t:=1;
s:=t;
while t>e do
begin
n:=n*2;
t:=1/n;
s:=s+t;
end;
write('S=',s:0:4);
end.
Объяснение кода листинга программы
- Создаются переменные e, n, t, s типа real.
- В цикле repeat-until выполняется следующая последовательность действий:
- Выводится сообщение 'Введите точность 0<e<1 e='.
- Считывается значение переменной e с помощью функции readln.
- Проверяется условие: e должно быть больше 0 и меньше 1.
- Если условие выполняется, то цикл повторяется.
- Иначе, цикл завершается.
- Переменная n инициализируется значением 1.
- Переменная t инициализируется значением 1/n.
- Переменная s инициализируется значением t.
- Запускается цикл while:
- Переменная n удваивается.
- Переменная t пересчитывается как 1/n.
- Переменная s увеличивается на значение t.
- Цикл продолжается до тех пор, пока значение переменной t больше значения переменной e.
- Выводится сообщение 'S=', за которым следует значение переменной s в формате 0:4.
- Программа завершается.