result := 1;//начальное значение - 1. Иначе при умножении на 0 будет всегда 0
readln(n);//вводим число, факториал которого надо найти
while n > 1 do//пока н не будет меньше, выполняем тело
begin
result := result * n;//Вычисляем факториал по принципу: С конца к началу. умножаем 5 на 1(начальное значение result), потом 4 на 5(прошлое значение результ) потом 3 на 20 и тп
n := n - 1;//отнимаем от n 1 и переходим с предыдущему числу
Answers & Comments
var i,n, result:integer;//определяем переменные
begin
result := 1;//начальное значение - 1. Иначе при умножении на 0 будет всегда 0
readln(n);//вводим число, факториал которого надо найти
while n > 1 do//пока н не будет меньше, выполняем тело
begin
result := result * n;//Вычисляем факториал по принципу: С конца к началу. умножаем 5 на 1(начальное значение result), потом 4 на 5(прошлое значение результ) потом 3 на 20 и тп
n := n - 1;//отнимаем от n 1 и переходим с предыдущему числу
end;
writeln('Факториал = ', result);
end.
Факториал 5 = 1 * 2 * 3 * 4 * 5 = 120