В
Все
Х
Химия
В
Видео-ответы
А
Алгебра
Г
Геометрия
О
ОБЖ
Д
Другие предметы
У
Українська література
Р
Русский язык
Б
Беларуская мова
У
Українська мова
Э
Экономика
Ф
Физика
М
Математика
Ф
Французский язык
Г
География
И
Информатика
М
МХК
О
Окружающий мир
П
Психология
Н
Немецкий язык
О
Обществознание
П
Право
И
История
М
Музыка
Л
Литература
Қ
Қазақ тiлi
Б
Биология
А
Английский язык
mayte
mayte
11.01.2021 16:22 •  Информатика

Вычислить факториал числа n (n! ) . (прим: 5! =1*2*3*4*5)

Ответ:
крутелик9
крутелик9
02.10.2020 14:58
Const    len = 1000;

type
    longnum = array[1..len] of longint;

var
      n, i: longint;
      s: longnum;
    
procedure InitLongNumber(n: longint; var a: longnum);
var
    i: longint;
begin
    for i := 1 to len do
        if n <> 0 then
            begin
                a[i] := n mod 10;
                n := n div 10
             end else
                a[i] := 0;
end;

function mul(a: longnum; k: longint): longnum;
var
    i, tmp: longint;
begin
    tmp := 0;
    
    for i := 1 to len - 1 do
    begin
        a[i] := a[i] * k + tmp;
        tmp := a[i] div 10;
        a[i] := a[i] mod 10 
    end;

    result := a
end;

procedure PrintLongNumber(a: longnum);
var
    i, j: longint;
begin
    i := len;
    while a[i] = 0 do
        dec(i);
    for j := i downto 1 do
        write(a[j])
end;

begin   
    readln(n);
    InitLongNumber(1, s);
    for i := 1 to n do
            s := mul(s, i);
    write(n, '! = ');
    PrintLongNumber(s);
end. 
0,0(0 оценок)
Ответ:
илья1864
илья1864
02.10.2020 14:58
Решение только для PascalABC.Net:

uses System.Numerics;
var
  n,i:integer;
begin
  Write('Введите натуральное число: '); Read(n);
  var f:=new BigInteger(1);
  for i:=2 to n do f:=f*i;
  Writeln(n,'! = ',f);
end.

Тестовое решение:
Введите натуральное число: 50
50! = 30414093201713378043612608166064768844377641568960512000000000000
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?