Помогите с информатикой!вычислить N!=1*2*3*...*N с помощью паскаля

Помогите с информатикой!
вычислить N!=1*2*3*...*N с подмогою паскаля

Задать свой вопрос
1 ответ
1. Современное решение
// PascalABC.NET 3.3, сборка 1573 от 04.11.2017
// Внимание! Если программка не работает, обновите версию!

begin
  var n:=ReadInteger('n=');
  Writeln(n,'! = ',2.To(n).Aggregate(BigInteger(1),(i,j)-gt;i*j))
end.

Образцы
n= 20
20! = 2432902008176640000

n= 43
43! = 60415263063373835637355132068513997507264512000000000

2. "Школьный древний вариант"
// Free Pascal 3.0.0

var
  i,n:longint;
  P:int64;

begin
  Write('n= '); Read(n);
  if ngt;20 then
    Writeln('Очень великое n, возможно 1,2, ... 20')
  else begin
    P:=1;
    for i:=2 to n do P:=P*i;
    Writeln(n,'! = ',P);
    end
end.

Образцы
n= 20
20! = 2432902008176640000

n= 43
Очень большое n, возможно 1,2, ... 20

Если не делать проверки n, было бы
n= 43
43! = -7904866829883932672
Костян Тутихин
Спасибо громадное!)))))
, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт