math.integer.md
1> **Источник:** https://python-all.ru/3.15/library/math.integer.html2>3> «Документация Python на русском» – неофициальный перевод официальной документации Python: версии от 2.6 до 3.16, полнотекстовый поиск, английский оригинал рядом с переводом. Эта Markdown-версия страницы предназначена для работы с LLM: вставьте её в ChatGPT, Claude или Cursor.45---67# `math.integer` – математические функции для целых чисел89Добавлено в версии 3.15.1011---1213Этот модуль предоставляет доступ к математическим функциям, определённым для целочисленных аргументов. Эти функции принимают целые числа и объекты, реализующие метод [`__index__()`](https://python-all.ru/3.15/reference/datamodel.html#object.__index__), который используется для преобразования объекта в целое число.1415Следующие функции предоставляются этим модулем. Все возвращаемые значения вычисляются точно и являются целыми числами.1617#### `math.integer.comb(n, k, /)`1819Возвращает количество способов выбрать *k* элементов из *n* элементов без повторений и без учёта порядка.2021Вычисляется в `n! / (k! * (n - k)!)`, когда `k <= n`, и в ноль, когда `k > n`.2223Также называется биномиальным коэффициентом, поскольку он равен коэффициенту при k-м члене в разложении многочлена `(1 + x)ⁿ`.2425Возбуждает [`ValueError`](https://python-all.ru/3.15/library/exceptions.html#ValueError), если хотя бы один из аргументов отрицательный.2627#### `math.integer.factorial(n, /)`2829Возвращает факториал неотрицательного целого числа *n*.3031#### `math.integer.gcd(*integers)`3233Возвращает наибольший общий делитель указанных целых аргументов. Если хотя бы один аргумент не равен нулю, возвращается наибольшее положительное целое число, являющееся делителем всех аргументов. Если все аргументы равны нулю, возвращается `0`. Вызов `gcd()` без аргументов возвращает `0`.3435#### `math.integer.isqrt(n, /)`3637Возвращает целую часть квадратного корня неотрицательного целого числа *n*. Это округление вниз точного квадратного корня из *n*, или, что то же самое, наибольшее целое число *a* такое, что *a*² ≤ *n*.3839Для некоторых приложений может быть удобнее наименьшее целое число *a* такое, что *n* ≤ *a*², иными словами, округление вверх точного квадратного корня из *n*. Для положительного *n* это можно вычислить с помощью `a = 1 + isqrt(n - 1)`.4041#### `math.integer.lcm(*integers)`4243Возвращает наименьшее общее кратное указанных целых аргументов. Если все аргументы не равны нулю, возвращается наименьшее положительное целое число, кратное всем аргументам. Если хотя бы один аргумент равен нулю, возвращается `0`. Вызов `lcm()` без аргументов возвращает `1`.4445#### `math.integer.perm(n, k=None, /)`4647Возвращает количество способов выбрать *k* элементов из *n* без повторений и с учётом порядка.4849Вычисляется в `n! / (n - k)!`, когда `k <= n`, и в ноль, когда `k > n`.5051Если *k* не указан или равен `None`, то *k* по умолчанию принимается равным *n*, и функция возвращает `n!`.5253Возбуждает [`ValueError`](https://python-all.ru/3.15/library/exceptions.html#ValueError), если хотя бы один из аргументов отрицательный.54