РЕЬЯТ ПОМОГИТЕ СРОЧНООО Напишите программу вычисления выражения: s=1!+2!+3!+...+n!...

0 голосов
77 просмотров

РЕЬЯТ ПОМОГИТЕ СРОЧНООО
Напишите программу вычисления выражения: s=1!+2!+3!+...+n!

Используйте функцию вычисления факториала


Информатика (267 баллов) | 77 просмотров
Дано ответов: 2
0 голосов
Правильный ответ

// PascalABC.NET 3.1, сборка 1198 от 11.03.2016
function F(n:Integer):integer:=Range(1,n).Aggregate(1,(i,j)->i*j);

begin
  Writeln(Range(1,ReadInteger('n=')).Select(x->F(x)).Sum);
end.

Тестовые решения:
n= 5
153

n= 10
4037913

(142k баллов)
0 голосов

Var n,i,s:integer;
function fact(k:integer):integer;
var j,f:integer;
begin
f:=1;
for j:=1 to k do f:=f*j;
fact:=f;
end;
begin
write('n='); readln(n);
s:=0;
for i:=1 to n do s:=s+fact(i);
writeln('s=',s);
end.

Пример:
n=5
s=153

(194k баллов)