7. Напишите программу вычисления выражения s= 1! + 2! + 3! + … + n! Здесь n! — факториал числа n. n! = 1 · 2 · … · (n– 1) · n. Используйте функцию вычисления факториала.
Ответ
Вот пример программы на Паскале, которая вычисляет значение выражения s = 1! + 2! + 3! + … + n!:
program FactorialSum;
function factorial(n: integer): integer;
var
i, result: integer;
begin
result := 1;
for i := 1 to n do
result := result * i;
factorial := result;
end;
var
n, i, s: integer;
begin
writeln('Введите значение n:');
readln(n);
s := 0;
for i := 1 to n do
s := s + factorial(i);
writeln('Значение выражения s = 1! + 2! + 3! + … + n!:');
writeln(s);
end.
В этой программе мы сначала определяем функцию factorial, которая вычисляет факториал числа n с помощью цикла for. Мы инициализируем переменную result значением 1 и затем в цикле умножаем ее на каждое число от 1 до n.
Затем мы объявляем переменные n, i и s.
После этого мы запрашиваем у пользователя ввод значения n.
Затем мы инициализируем переменную s значением 0.
Затем мы используем цикл for для вычисления значения выражения s = 1! + 2! + 3! + … + n!, добавляя к переменной s факториал каждого числа от 1 до n.
В конце мы выводим значение выражения s.
Пример работы программы:
Введите значение n:
5
Значение выражения s = 1! + 2! + 3! + … + n!:
153