Персональная страничка
| ||
Предыдущий раздел:
Следующий раздел:
Пример 6: Вычислить значение выражения 1!+2!+3!+…+n!
Решение «в лоб» состоит в том, чтобы в теле цикла, осуществляющего суммирование, производить вычисление факториала:
s:=0;
for i:=1 to n do
begin
{Вычисление факториала от i}
p:=1;
for k:=1 to i do
p:=p*k;
{Добавление вычисленного факториала к сумме}
s:=s+p;
end;
Заметим, однако, что при вычислении факториала на каждом шаге получается факториал все большего целого числа. Эти «промежуточные» результаты однократного вычисления факториала и можно суммировать:
s:=0;
p:=1;
for i:=1 to n do
begin
p:=p*i;
s:=s+p;
end;
Следующий раздел:
Предыдущий раздел: