Написать программу, которая вычисляет факториал числа, введенного с клавиатуры, используя...

0 голосов
50 просмотров
Написать программу, которая вычисляет факториал числа, введенного с клавиатуры, используя цикл с постусловием.

язык - pascal

Информатика (1.6k баллов) | 50 просмотров
Дан 1 ответ
0 голосов
var
  y: System.uint64; //Большая цЫфра же и положительная
  x, i: byte; //Нет смысла большие числа брать слишком, переполнение будет

begin
  readln(x); //Принимаем число...
  y := 1;
  i := 1;
  repeat
    y *= i; //...и умножаем такое-то количество раз
    i += 1;
  until (i > x);
  if (y = 0) then //Выводим, предусмотрев переполнение
    writeln('Слишком большая цЫферка')
  else
    writeln(y);
end.
==========================================
Int64 - это то же самое, что LongInt, а Uint64 (unsign long int) - длинное число без знака, при правильном использовании позволяет записывать в переменную числа, в 2 раза превышающие максимум Int64
(16.9k баллов)