Калькулятор факториала
Результат
Факториал
- Цифр
- 3
- Концевые нули
- 1
Калькулятор факториала перемножает все целые числа от 1 до n и сообщает произведение вместе с двумя чтениями, которые говорят, насколько оно выросло: сколько в ответе цифр и сколькими нулями он заканчивается. Факториал 5 равен 120 — три цифры, один концевой нуль. Ответ быстро покидает читаемый диапазон, и после 21 главное чтение переходит в научную запись, но количество цифр и концевые нули остаются точными, потому что оба получаются по формулам, а не подсчётом символов напечатанного значения. Факториал 0 равен 1 — это пустое произведение, — а 170 — наибольший ввод, который здесь принимается: факториал 171 переполняет то, что способно вместить число с плавающей точкой двойной точности, и отклоняется, а не получает в ответ бесконечность.
Факториалы от 0 до 12
| n | Факториал | Цифры | Концевые нули |
|---|---|---|---|
| 0 | 1 | 1 | 0 |
| 1 | 1 | 1 | 0 |
| 2 | 2 | 1 | 0 |
| 3 | 6 | 1 | 0 |
| 4 | 24 | 2 | 0 |
| 5 | 120 | 3 | 1 |
| 6 | 720 | 3 | 1 |
| 7 | 5040 | 4 | 1 |
| 8 | 40320 | 5 | 1 |
| 9 | 362880 | 6 | 1 |
| 10 | 3628800 | 7 | 2 |
| 11 | 39916800 | 8 | 2 |
| 12 | 479001600 | 9 | 2 |
Первые тринадцать факториалов, и рядом с каждым — два чтения. Строки нужны, чтобы рост был виден: тысяча перейдена на восьмой строке, то есть у факториала 7, а сто миллионов — на последней, тринадцатой, у факториала 12, тогда как количество цифр прибывает по одной, а концевые нули стоят на нуле, пока в числе не появится пятёрка. Читая последний столбец сверху вниз, видно, что счёт меняют только 5 и 10, а 11 и 12 уже ничего не добавляют: новых множителей пятёрки в них нет. Каждая ячейка — обычное число, поэтому таблица одинакова во всех десяти языках, которые обслуживает сайт, а числовые ячейки пересчитываются программой при каждой сборке страницы и печатаются без локализации: внутри таблицы читается 3628800, а не 3 628 800.
Формула
n! = 1 × 2 × … × n цифры = ⌊log₁₀(n!)⌋ + 1 концевые нули = ⌊n/5⌋ + ⌊n/25⌋ + ⌊n/125⌋ + …
- n
- Число, факториал которого нужен: целое число от 0 до 170. Оно же и количество множителей, поскольку произведение идёт от 1 до n. Верхняя граница — не выбор отображения: факториал 171 превышает наибольшее значение, которое способно представить число с плавающей точкой двойной точности, поэтому у всего, что выше 170, ответа нет.
- n!
- Сам факториал, произведение всех целых чисел от 1 до n. Он обгоняет экспоненту: факториал 5 равен 120, а факториал 10 — уже 3 628 800. Как только значение переходит миллион, напечатанный ответ становится научной записью: она сохраняет величину читаемой, не печатая сотню цифр.
- цифры
- Сколько десятичных цифр в факториале. Это значение получается сложением логарифмов, а не подсчётом символов напечатанного числа, поэтому оно остаётся верным и на верхней границе диапазона, где напечатанный факториал несёт всего семь значащих цифр.
- концевые нули
- Сколько нулей стоит в конце факториала. Каждому концевому нулю нужен множитель 10, а ему — одна двойка и одна пятёрка; двоек в факториале гораздо больше, чем пятёрок, поэтому счёт целиком решают пятёрки: каждое кратное 5, 25, 125 и так далее добавляет ещё один нуль.
Обращайтесь к этому, когда сам ответ и есть значение: число способов упорядочить целый набор, член ряда или размер произведения. Чтобы выбрать r предметов из n, калькуляторы сочетаний и перестановок делят один факториал на другой, а не перемножают заново.
Разобранные примеры
Факториал 5
- Умножаем по порядку: 1 × 2 = 2
- 2 × 3 = 6
- 6 × 4 = 24
- 24 × 5 = 120
- В числе 120 три знака, и оно кончается одним нулём, поэтому два чтения равны 3 и 1
Самый маленький случай, в котором все три чтения можно проверить глазами. Произведение достаточно короткое, чтобы прочитать его целиком, а количество цифр и концевые нули видны прямо в нём — именно поэтому страница и открывается этим значением.
Где чтение превращается в научную запись
- Умножаем от 1 до 20 и получаем ровно 2 432 902 008 176 640 000
- Это девятнадцать цифр, поэтому чтение количества цифр равно 19
- Четыре из этих цифр — нули в конце, и за них отвечают пятёрки в числах 5, 10, 15 и 20
- Панель печатает произведение как 2,432902 × 10¹⁸, а не как полное девятнадцатизначное число
Точка, в которой напечатанное значение перестаёт быть точным значением. Показанные цифры — это семь старших значащих цифр того же самого числа, которое описывают два других чтения, поэтому все три выхода согласуются, хотя напечатать целиком можно только один из них. До 21 напечатанное произведение точно.
Сколькими нулями кончается факториал 100
- Считаем кратные 5 до 100: их 20
- Прибавляем кратные 25, которые несут вторую пятёрку: их 4
- Прибавляем кратные 125 — ни одного, потому что 125 больше 100
- 20 + 4 = 24 концевых нуля
- Сам факториал содержит 158 цифр и печатается как 9,332622 × 10¹⁵⁷
Читаемый факт здесь — именно количество нулей, и оно выводится из одних пятёрок, а не из самого числа. В факториале 100 содержится 158 цифр, поэтому его конец нельзя было бы рассмотреть глазами, даже если напечатать их все.
Ограничения
Принимаются только целые числа от 0 до 170. Отрицательные значения отклоняются, потому что факториал на них не определён: у гамма-функции, которая продолжает факториал на другие числа, в каждой отрицательной целой точке полюс. Дроби отклоняются по той же причине. Выше 170 произведение переполняет число с плавающей точкой и вернулось бы как бесконечность, поэтому такой ввод отклоняется с указанием причины. Начиная с 21 напечатанный факториал — это приближение в научной записи, а не точное целое число; количество цифр и концевые нули остаются точными независимо от этого и вместе описывают размер числа, цифры которого показаны не все. Эта страница не считает биномиальные коэффициенты и перестановки напрямую — она даёт тот факториал, из которого построены те страницы.
Частые вопросы
- Что такое факториал?
- Произведение всех целых чисел от 1 до заданного числа. Факториал 5 — это 1 × 2 × 3 × 4 × 5, то есть 120. Он считает число способов, которыми можно упорядочить набор из такого количества различных предметов, и именно поэтому встречается в теории вероятностей и в задачах на подсчёт, а не в измерениях.
- Почему факториал 0 равен 1?
- Потому что это пустое произведение: умножать нечего, а значение, которое оставляет произведение неизменным, равно 1. Соглашение не произвольно: именно оно делает осмысленной подсчётную трактовку (упорядочить пустое множество можно ровно одним способом) и сохраняет верным рекуррентное соотношение n! = n × (n−1)! при n, равном 1.
- Почему калькулятор останавливается на 170?
- Потому что факториал 171 больше наибольшего числа, которое способно представить число с плавающей точкой двойной точности, и вычисление возвращает бесконечность. Это ограничение не про отображение: у каждого ввода выше 170 представимого ответа нет. Сам факториал 170 — это примерно 7,26 × 10³⁰⁶, число из 307 цифр.
- Как считаются концевые нули?
- Подсчётом множителей пятёрки в факториале. Концевому нулю нужна десятка, а десятке — одна двойка и одна пятёрка; двоек в избытке, поэтому решают именно пятёрки. Каждое кратное 5 даёт один нуль, каждое кратное 25 — второй, каждое кратное 125 — третий, и так далее. Для факториала 100 это 20 + 4 = 24 нуля.
- Почему факториал печатается в научной записи?
- Потому что после 21 у значения больше цифр, чем панель результатов может осмысленно показать: в факториале 100 их 158. Научная запись сохраняет величину разборчивой. Точное целое число при этом остаётся тем, что описывают два других чтения: количество цифр говорит, какой оно длины, а концевые нули — чем оно заканчивается. Большие факториалы иначе и не показать.
- Сколько цифр у большого факториала?
- Чтение количества цифр отвечает на это точно при любом вводе, который принимает страница. Оно получается сложением логарифмов, а не измерением напечатанной строки, поэтому не теряет точности, когда напечатанное значение является приближением. Это количество всегда как минимум на единицу больше числа концевых нулей.
Источники
- Factorial — the definition, the empty product convention that makes 0! equal 1, and the rate at which the value grows — Wolfram MathWorld (United States)
- A000142 — the factorial numbers 1, 1, 2, 6, 24, 120 … as a catalogued sequence, with exact values far beyond the range a double can hold — OEIS Foundation (United States)
- Combination — the binomial coefficient, written as one factorial divided by two others, which is where factorials are most often needed — Wolfram MathWorld (United States)