Процедура Сформировать()
Х=10;
Результат=0;
ПриростТроек=1;
Для А=1 По Х Цикл
Для Б=1 По А Цикл
ПриростТроек=3*ПриростТроек;
КонецЦикла; //Б=1 По Х
ТекущееВыражение=1/ПриростТроек;
ПриростТроек=1;
Результат=Результат+ТекущееВыражение;
КонецЦикла; //А=1 По Х
Сообщить(Результат);
КонецПроцедуры
...
sum:=1; {Сумма ряда}
pred:=1; {Предыдущий член ряда}
i:=1; {Счетчик}
while i<10 do begin {Условие окончания - 10 членов ряда просумировано}
sum:=sum+pred/3; {Увеличиваем сумму}
pred:=pred/3; {Текущий член, становится предыдущим}
inc(i); {Увеличиваем количество просуммированных членов на 1}
end;
...
...
sum:=1; {Сумма ряда}
pred:=1; {Предыдущий член ряда}
e:=0.001; {Точность}
while pred>e do begin {Условие окончания - последний просуммированный член меньше, либо равен заданной точности}
sum:=sum+pred/3; {Увеличиваем сумму}
pred:=pred/3; {Текущий член, становится предыдущим}
end;
...
Введите значение N: 10
1.49997459736829E+0000
1.49997459736829E+0000
const mult: Double = 3;
VAR
sum, elem, exact: Extended;
i, N : Integer;
BEGIN
Write('Введите значение N: '); ReadLn(N);
elem := 1;
for i:=1 to N do elem := elem/mult;
exact := 1*(elem - 1)/(1/mult - 1);
sum := 0; elem := 1;
while N > 0 do
begin
sum := sum + elem;
elem := elem/mult; {и здесь используем только деление}
dec(N)
end;
WriteLn(sum);
WriteLn(exact);
END.
Если Вы уже зарегистрированы на Портале - войдите в систему, если Вы еще не регистрировались - пройдите простую процедуру регистрации.