Где применяется вычисление факториала?
В учебнике по алгебре за 5 класс факториал объясняется для вычисления количества способов решения задачи, то есть сколько вариантов ответов может быть. Не во всех задачах, конечно, а в тех, где спрашиваются варианты. Например, сколько разных вариантов распределения 5 разноцветных кружек в семье из пяти человек? Объяснение приводится графически геометрической прогрессией. Смысл в том, что у каждого члена семьи в каждом следующем распределении окажется кружка одного цвета 5 раз в то время как у остальных родственников будут разные цвета. Записывается и вычисляется так: 5!=1*2*3*4*5=120
Выходит, что существует 120 способов распределения цветных кружек между 5 людьми.
автор вопроса выбрал этот ответ лучшим
Что такое факториал числа и как его считать

Факториал часто встречается в математике, особенно часто — в задачах комбинаторики и математического анализа. Разберемся с факториалом и научимся решать простые задачи.
Что такое факториал
Иногда в математике надо посчитать произведение натуральных чисел, следующих по порядку и начинающихся с единицы. Если стоит задача посчитать произведение до десятка, то такая запись помещается в одну строчку: 1 × 2 × 3 × 4 × 5. Если вычисления доходят до нескольких десятков или даже сотен, то только на запись выражения может уйти достаточно много времени. Для его экономии и более компактного вида в математике существует факториал.

Освойте профессию «Data Scientist» на курсе с МГУ
Data Scientist с нуля до PRO
Освойте профессию Data Scientist с нуля до уровня PRO на углубленном курсе совместно с академиком РАН из МГУ. Изучите продвинутую математику с азов, получите реальный опыт на практических проектах и начните работать удаленно из любой точки мира.

25 месяцев
Data Scientist с нуля до PRO
Создавайте ML-модели и работайте с нейронными сетями
11 317 ₽/мес 6 790 ₽/мес

Факториал натурального числа n — это произведение всех натуральных чисел от 1 до n, включая само n. Факториал записывается в виде восклицательного знака после числа (n!), а произносится как «эн факториал». Зная все это, выражение выше можно записать более компактно: 1 × 2 × 3 × 4 × 5 = 5! = 120. Факториал активно применяется в комбинаторике, теории чисел, математическом анализе, функциональном анализе и других разделах математики. Натуральные числа — это числа, встречающиеся естественным образом во время порядкового счета (1, 2, 3, 4, 5 и далее). Последовательно расположенные натуральные числа в порядке возрастания называют натуральным рядом.
Базовые свойства факториала
- факториал нуля всегда равен единице — 0! = 1;
- факториал единицы всегда равен единице — 1! = 1.
Для быстрого вычисления можно пользоваться таблицей факториалов, которая содержит уже посчитанные факториалы чисел:
| n! | Значение |
|---|---|
| 1! | 1 |
| 2! | 2 |
| 3! | 6 |
| 4! | 24 |
| 5! | 120 |
| 6! | 720 |
| 7! | 5 040 |
| 8! | 40 320 |
| 9! | 362 880 |
| 10! | 3 628 800 |
| 11! | 39 916 800 |
| 12! | 479 001 600 |
| 13! | 6 227 020 800 |
| 14! | 87 178 291 200 |
| 15! | 1 307 674 368 000 |
| 16! | 20 922 789 888 000 |
| 17! | 355 687 428 096 000 |
| 18! | 6 402 373 705 728 000 |
| 19! | 121 645 100 408 832 000 |
| 20! | 2 432 902 008 176 640 000 |
Из таблицы можно заметить, что факториал — быстрорастущая функция. Значение 10! уже преодолевает разряд тысяч, переходя в миллионы.
Рекуррентная формула факториала
Факториал подвержен рекурсии, что упрощает процесс его вычисления. Рассмотрим на простом примере. Надо найти значение 6!. Для этого разложим компактную запись факториала на отдельные множители: 6! = 1 × 2 × 3 × 4 × 5 × 6. Можно начать перемножать все числа друг за другом, но из записи видно, что можно сэкономить время, умножив факториал пяти на шесть: 5! × 6. Мы уже знаем, что факториал 5 равен 120, поэтому просто умножим значение на шесть и получим 720: 6! = 1 × 2 × 3 × 4 × 5 × 6 = 5! × 6 = 720.

Рекуррентную формулу факториала в общем виде можно записать так:
n! = (n — 1)! × n. Такую формулу удобно использовать для построения алгоритмов вычисления факториала в программировании, но считать с ней факториалы больших чисел долго и сложно. Например, если надо найти 100!, то нужно знать 99!, потому что 100! = 99! × 100.
Воспользуемся рекуррентной формулой факториала для вычисления с помощью Python. Код функции будет выглядеть так:
def factorial(n): # Обработка стандартных значений if n == 1 or n == 0: return 1 else: # Обработка значений больше единицы return factorial(n-1) * n
Создаем функцию factorial и передаем в качестве аргумента значение n. Если n равно нулю или единице, то возвращаем единицу согласно базовым свойствам факториала. В остальных случаях рекурсивно вызываем функцию factorial со значением n-1. Попробуем запустить функцию для различных чисел и сравнить результат с таблицей факториалов:
print(factorial(5)) print(factorial(10)) print(factorial(15)) print(factorial(999))
Вывод: >>> 120 >>> 3628800 >>> 1307674368000 >>> RecursionError: maximum recursion depth exceeded in comparison
Резульатыт работы функции верные, а это значит, что код работает. Можно заметить, что при попытке вычислить 999! программа выдала ошибку. Связано это с максимальной глубиной рекурсии — в Python по умолчанию установлен лимит на 998 рекурсивных вызовов. Глубину рекурсии можно увеличить, если перед функцией указать новое значение лимита:
import sys sys.setrecursionlimit(2000)
Теперь рекурсивно функцию можно вызывать до 2 тыс. раз, но это может нагружать компьютер, особенно если вычислять большие значения.

Станьте дата-сайентистом на курсе с МГУ и решайте амбициозные задачи с помощью нейросетей
Формула Стирлинга
Вычисление факториала числа n путем нахождения произведения всех натуральных чисел от 1 до n может занять много времени. Такие задачи сложно обрабатывать даже с помощью компьютера. Все из-за того, что функция факториала растет слишком быстро. Облегчить задачу можно с помощью формулы шотландского математика Джеймса Стирлинга, которая позволяет быстро вычислить приближенное значение факториала. Общая запись формулы выглядит следующим образом:

Для понимания формулы напомним, что π приблизительно равно 3,14, а e — 2,71. После этого в формулу Стирлинга останется только подставить значение n и выполнить математические операции.
Рассмотрим пример нахождения 5! с помощью формулы Стирлинга:

После ряда преобразований и вычислений получим, что 5! = 118,019. Если перемножить числа одно за другим, то 5! = 120. На примере хорошо видно, что значение получается приближенным. Для малых значений n, как в примере выше, погрешность будет больше, чем для больших.
Где применяется факториал
Наглядная область применения факториала — задачи на перестановки без повторений из комбинаторики. Рассмотрим на примере.
Задача
На банкет пригласили группу, состоящую из 6 человек. Сколькими способами можно разместить гостей за одним столом?
За столом есть шесть мест, по одному для каждого гостя:

Можно попробовать посчитать вручную все возможные комбинации размещения гостей, но это займёт много времени. Во-первых, уже учтенные комбинации надо запоминать и при каждой новой комбинации проверять, нет ли уже такой. Во-вторых, очень легко упустить возможную комбинацию.

Такие задачи можно легко и быстро решать с помощью факториала. Для этого каждому месту присвоим букву латинского алфавита от A до F:

На место под буквой A мы можем расположить любого из 6 гостей, у нас останется еще 5. На место под буквой B уже можно посадить любого из 5 гостей, останется 4. На место под буквой C можно посадить любого из 4 гостей, останется еще 3. И так далее. На последнее место F можно посадить всего одного гостя, так как остальных уже рассадили. Получим следующую ситуацию:

Для того чтобы узнать все способы рассадки гостей, надо перемножить возможные варианты, записанные в изображении над местами. Получим 6 × 5 × 4 × 3 × 2 × 1. Это же выражение можно записать в виде 6!, что равно 720.
Практические задачи
Теперь мы знаем достаточно для решения задач на нахождение факториала. Важно помнить, что можно упрощать факториалы, раскрывать краткую запись, сворачивать полную, сокращать и перемножать.
Задача 1

Для решения задачи воспользуемся рекуррентным свойством факториала и разложим числитель. Получившиеся значения в числителе и знаменателе можно сократить, останется 50.

Задача 2
Найдите значение выражения при n=5:

Подставим значения и посчитаем скобки, получившийся числитель можем разложить по рекуррентной формуле, чтобы выражение выглядело как 6 × 5 × 4!. Сократим лишнее и получим 6 × 5 = 30:

Задача 3
Найдите сумму факториалов чисел от 1 до 5:

Найдем факториал каждого числа и посчитаем сумму слагаемых:

Задача 4
Найдите значение выражения:

Разложим оба числителям по рекуррентной формуле факториала:

Сократим и умножим, получив в ответе 57:

Итог
- Факториал натурального числа n — произведение натуральных чисел от 1 до n.
- Факториал нуля и единицы всегда равны одному — 0! = 1 и 1! = 1.
- Для отрицательных и дробных чисел нельзя вычислить факториал;
- Факториал — быстрорастущая функция, из-за чего сложно находить значения для больших чисел.
- Быстро посчитать факториал можно с помощью формулы Стирлинга, но значение будет приближённым.
Зачем может понадобиться факториал в жизни?
На Яндекс Дзен встретил такой пример. А зачем знать, сколькими способами можно рассадить людей вокруг стола? Какие ещё примеры применимости в жизни факториала можно привести? Ещё встречал, что в астрономии используется.
В гостиной стоит стол с четырьмя стульями вокруг. В комнату заходит четыре человека. Сколько существует вариантов для рассаживания вокруг стола всех четырёх человек?
Как раз для решения подобных задач требуется факториал. Зная его определение, задача решается в одно действие: 4!=1х2х3х4=24. То есть, ответ: 24 варианта (комбинации).
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:
Зачем вообще может понадобиться передавать структуру?
Методу в качестве параметра. using System; class newClass < public int n; >struct.
зачем может понадобиться делать операторы виртуальными?
Дорогие программисты, во первых, хочу поздравить вас с Наступающим новым Годом! Я к вам обращаюсь с.

Что делает данный код и зачем такое кому-нибудь может понадобиться?
Я ответил на вопрос,но точной формулировки не нашёл,хотел бы свериться(приложения с ответами.
[Tomcat] Зачем может понадобиться и HTTP и AJP коннекторы для одного инстанса?
В мануале проекта написано забиндить два порта — для http и для ajp. Какие-то могут быть use cases.
Любитель математики
1476 / 987 / 282
Регистрация: 27.01.2014
Сообщений: 3,275
Сообщение от supmener 
Какие ещё примеры применимости в жизни факториала можно привести?
В повседневной жизни обычному, не отягощённому необходимостью выполнения математических расчётов, человеку факториал не нужен. Примеры применимости факториала можно найти в учебниках по комбинаторике. Какие у Вас сложности с этим?
![]()
27695 / 17314 / 3809
Регистрация: 24.12.2010
Сообщений: 38,979
Имхо, комбинаторикой пронизана вся наша жизнь. И факториал — один из ее столпов.
Вспомним хотя бы страдания Венички Ерофеева.
» Но что я пил? И в какой последовательности?»
-118 / 92 / 13
Регистрация: 26.06.2013
Сообщений: 4,529
В каком учебнике и на какой странице можно найти?
2441 / 1839 / 406
Регистрация: 15.12.2013
Сообщений: 8,222
supmener, какие учебники вы уже нашли?
Любитель математики
1476 / 987 / 282
Регистрация: 27.01.2014
Сообщений: 3,275
Сообщение от supmener 
В каком учебнике и на какой странице можно найти?
Например, в учебнике «Дискретная математика», составленном А. Д. Плотниковым, на странице 152. Там указано, что
Просто Лис
![]()
5318 / 3332 / 1021
Регистрация: 17.05.2012
Сообщений: 9,765
Записей в блоге: 9
Ещё может пригодиться в оценке сложности алгоритмов О() (читается как «о-большое»). Хотя факториал там встречается реже той же полиномиальной или степенной функции.
-118 / 92 / 13
Регистрация: 26.06.2013
Сообщений: 4,529
Сообщение от S_el 
какие учебники вы уже нашли?
По наводке в этой теме книгу автора Плотников А.Д. Дискретная математика (2005)
![]()
27695 / 17314 / 3809
Регистрация: 24.12.2010
Сообщений: 38,979
Сообщение от supmener 
В каком учебнике и на какой странице можно найти?
Если вы ко мне, то это
Сообщение от Байт 
» Но что я пил? И в какой последовательности?»
цитата из великой поэмы «Москва — Петушки». Страницы, увы не помню. Но можно ее и всю прочесть, по объему она не велика, а удовольствие получите огромное.
ЗЫ. Сейчас вот думаю, как соседскому первокласнику рассказать о перестановках. Однако, сложности. Они там еще умножение не проходили. Но попробую. Имхо, перестановки не менее базовое знание, чем умножение. Если не получится, обратим все в шутку.
1471 / 826 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
Сообщение от supmener 
Зачем может понадобиться факториал в жизни?
Например для создания темы с таким вопросом на форумах =).
Сообщение от angor6 
не отягощённому необходимостью выполнения математических расчётов,
Точней узкоспецифических теоретических расчетов из комбинаторики.
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь

Зачем может понадобиться чистое использование rvalue ссылок, типа T&& r = 5; (практическое применение)?
зачем может понадобиться чистое использование rvalue ссылок, типа T&& r = 5; (практическое.
Когда может понадобиться и абстрактный класс и интерфейс?
Доброго времени суток! Собственно вопрос в заголовке. Я думал, что если есть абстракный класс, то.
Для чего может понадобиться extern class
Что дает такая конструкция? extern class Class <>;
На каком этапе изучения языка может понадобиться математика?
на каком этапе изучения языка может понадобится математика ( на неплохом уровне, например)
Может кому понадобиться Выключение/перезагрузки компа и завершение сеанса
Копался в windows.h искал чего нибудь интересного вот и нашел. Вообщем функция для выключения.
В каком случае может понадобиться эксклюзивный доступ. Shared mutex
Допустим у меня есть некоторый вектор с классами. Есть пул тредов которые могут как читать, так и.
Факториал
Факториа́л числа n (лат. factorialis — действующий, производящий умножающий; обозначается n !, произносится эн факториа́л) — произведение всех натуральных чисел от 1 до n включительно:

По определению полагают 0! = 1. Факториал определён только для целых неотрицательных чисел.
Последовательность факториалов неотрицательных целых чисел начинается так:
1, 1, 2, 6, 24, 120, 720, 5040, 40 320, 362 880, 3 628 800, 39 916 800, 479 001 600, 6 227 020 800, 87 178 291 200, 1 307 674 368 000, 20 922 789 888 000, 355 687 428 096 000, 6 402 373 705 728 000, 121 645 100 408 832 000, 2 432 902 008 176 640 000, … (последовательность A000142 в OEIS)


Амплитуда и фаза факториала комплексного аргумента.
Факториал связан с гамма-функцией от целочисленного аргумента соотношением:

Таким образом, гамма-функцию рассматривают как обобщение факториала для положительных вещественных чисел.

Путём аналитического продолжения её также расширяют и на всю комплексную плоскость, исключая особые точки при

Пи-функция, определённая для всех вещественных чисел, кроме отрицательных целых, и совпадающая при натуральных значениях аргумента с факториалом.
Более непосредственным обобщением факториала на множество вещественных (и комплексных) чисел является пи-функция, определяемая как
то пи-функция натурального числа совпадает с его факториалом:
Как факториал, пи-функция удовлетворяет рекурсивному соотношению 
Формула Стирлинга
Основная статья: Формула Стирлинга

где