Ce face math.factorial()
factorial(n) returnează produsul numerelor de la 1 la n, exact, ca întreg (oricât de mare). factorial(0) este 1. Numărul de moduri în care pot fi așezate n obiecte este n!.
Acceptă doar întregi nenegativi; din Python 3.10, un float (chiar și 5.0) dă TypeError.
Parametri
| Parametru | Descriere |
|---|---|
n |
Un întreg nenegativ. |
Ce returnează
Un int.
Exemple
Exemplul 1: Factoriale
import math
print([math.factorial(n) for n in range(7)])
print(math.factorial(25))
print("Moduri de a așeza 8 invitați:", math.factorial(8))
Rezultat
[1, 1, 2, 6, 24, 120, 720]
15511210043330985984000000
Moduri de a așeza 8 invitați: 40320
Greșeli frecvente
- Calculezi combinări cu
factorial(n) // (factorial(k) * factorial(n - k)). Merge, darmath.comb(n, k)este mai simplu și mai rapid.
Comenzi înrudite
math.comb() și math.perm(): Numărul de combinări (ordinea nu contează) și de aranjamente (ordinea contează).math.gamma(), lgamma(), erf() și erfc(): Funcții speciale: gamma (factorial generalizat), logaritmul ei și funcția de eroare.math.prod() și math.sumprod(): Produsul tuturor elementelor și suma produselor a două liste (produs scalar).