
Vianap
6 год назад
Дано натуральное число n. Вычислить: S = 1/1! - 1/2! - 1/3! -...- 1/n!
Написать это в Паскале!
ОТВЕТЫ

Salyuzabd
Jul 22, 2019
Чтобы уменьшить количество вычислений, преобразуем формулу к рекуррентной.

Теперь все готово для программирования.
// PascalABC.NET 3.2, сборка 1353 от 27.11.2016
var
i,n:integer;
a,s:real;
begin
Write(n=); Read(n);
if n=1 then Writeln(S=1)
else
if n=2 then Writeln(S=0.5)
else begin
s:=0.5; a:=0.5;
for i:=3 to n do begin a:=a/i; s:=s-a end
end;
Writeln(S=,s)
end.
Пример
n=10
S=0.281718198853615
Теперь все готово для программирования.
// PascalABC.NET 3.2, сборка 1353 от 27.11.2016
var
i,n:integer;
a,s:real;
begin
Write(n=); Read(n);
if n=1 then Writeln(S=1)
else
if n=2 then Writeln(S=0.5)
else begin
s:=0.5; a:=0.5;
for i:=3 to n do begin a:=a/i; s:=s-a end
end;
Writeln(S=,s)
end.
Пример
n=10
S=0.281718198853615
110
Смежные вопросы: