Monet ihmiset eivät tiedä, mutta python tarjoaa suoran toiminnon, joka voi laskea luvun kertoimen kirjoittamatta koko koodia kertoimen laskemiseksi.
Naiivi menetelmä kertoimen laskemiseen
Python 3
# Python code to demonstrate naive method> # to compute factorial> n> => 23> fact> => 1> for> i> in> range> (> 1> , n> +> 1> ):> > fact> => fact> *> i> print> (> 'The factorial of 23 is : '> , end> => '')> print> (fact)> |
>
>Lähtö
The factorial of 23 is : 25852016738884976640000>
Aika monimutkaisuus: Päällä)
Aputila: O(1)
Käyttämällä math.factorial()
Tämä menetelmä on määritelty kohdassa matematiikka pythonin moduuli. Koska siinä on C-tyypin sisäinen toteutus, se on nopea.
merkkijonojen rakentaja java
math.factorial(x) Parameters : x : The number whose factorial has to be computed. Return value : Returns the factorial of desired number. Exceptions : Raises Value error if number is negative or non-integral.>
Python 3
# Python code to demonstrate math.factorial()> import> math> print> (> 'The factorial of 23 is : '> , end> => '')> print> (math.factorial(> 23> ))> |
>
>Lähtö
The factorial of 23 is : 25852016738884976640000>
Aika monimutkaisuus: Päällä)
Aputila: O(1)
Poikkeukset math.factorial()
- Jos annettu numero on negatiivinen:
Python 3
# Poikkeuksia (ei-integraalinen numero )
tuoda matematiikkaa
tulosta (5.6:n tekijä on : , end=)
# herättää poikkeuksen
tulosta (math.factorial(5.6))
>
>
Lähtö:
Traceback (most recent call last): File '/home/f29a45b132fac802d76b5817dfaeb137.py', line 9, in print (math.factorial(-5)) ValueError: factorial() not defined for negative values>
- Jos annettu numero on ei-integraaliarvo:
Python 3
>
>
Lähtö:
Traceback (most recent call last): File '/home/3987966b8ca9cbde2904ad47dfdec124.py', line 9, in print (math.factorial(5.6)) ValueError: factorial() only accepts integral values>