Задать вопрос
8 ноября, 06:25

Напишите программу, которая вводит с клавиатуры натуральное число N и определяет его факториал, т. е произведение натуральный чисел от 1 до N:N!=1*2*3 * ... * N. Что будет, если ввести большое значение N.

+3
Ответы (1)
  1. 8 ноября, 08:28
    0
    Program fakt;

    var

    n, i, z:integer;

    begin

    readln (n) ;

    z:=1;

    for i:=2 to n do

    z:=z*i;

    writeln (z) ;

    end.

    Если программу написать так, то максимальный факториал, которой мы сможем вычислить - 12. Можно integer изменить на real, тогда чуть больше сможем вычислить. Так же можно вычислить через массив, тогда где-то 3000 мы сможем получить.

    Если же ввести больше 12 в этой программе, то получится переполнение переменой, из-за чего число пойдёт "по кругу". Т. е. мы получим не 3 000 000 000, а - 1 000 000 000, т. к. максимальное число у integer - примерно 2 000 000 000
Знаете ответ на вопрос?
Не уверены в ответе?
Правильный ответ на вопрос 👍 «Напишите программу, которая вводит с клавиатуры натуральное число N и определяет его факториал, т. е произведение натуральный чисел от 1 до ...» по предмету 📗 Информатика. Развернутая система поиска нашего сайта обязательно приведёт вас к нужной информации. Как вариант - оцените ответы на похожие вопросы. Но если вдруг и это не помогло - задавайте свой вопрос знающим оппонентам, которые быстро дадут на него ответ!
Искать готовые ответы