Nicht viele Leute wissen es, aber Python bietet eine direkte Funktion, mit der die Fakultät einer Zahl berechnet werden kann, ohne den gesamten Code für die Berechnung der Fakultät zu schreiben.

Naive Methode zur Berechnung der Fakultät

n = 23
fact = 1
  
for i in range(1,n+1): 
    fact = fact * i 
      
print ("The factorial of 23 is : ",end="") 
print (fact) 

Ausgabe :

Die Fakultät von 23 lautet: 25852016738884976640000

Verwenden von math.factorial()

Diese Methode ist im Python-Modul „ math “ definiert . Da es eine interne Implementierung vom Typ C hat, ist es schnell.



math.factorial (x) 
Parameter: 
x: Die Zahl, deren Fakultät berechnet werden muss.
Rückgabewert :
Gibt die Fakultät der gewünschten Zahl zurück.
Ausnahmen:
Löst einen Wertfehler aus, wenn die Zahl negativ oder nicht ganzzahlig ist.
import math 
  
print ("The factorial of 23 is : ", end="") 
print (math.factorial(23)) 

Ausgabe :

Die Fakultät von 23 lautet: 25852016738884976640000

Ausnahmen in math.factorial()

  • Wenn die angegebene Nummer negativ ist:
    filter_none

    bearbeiten
    schließen

    play_arrow

    Link
    Helligkeit_4
    Code

      
    import math
      
    print ("The factorial of -5 is : ",end="")
      
    print (math.factorial(-5))
    chevron_right
    
    
    filter_none
    
    

    Ausgabe :

    Die Fakultät von -5 ist:
    

    Laufzeit Fehler :

    Traceback (letzter Anruf zuletzt):
      Datei "/home/f29a45b132fac802d76b5817dfaeb137.py", Zeile 9, in
        print (math.factorial (-5))
    ValueError: Fakultät() nicht für negative Werte definiert
    
  • Wenn die angegebene Zahl nicht integraler Wert ist:
    filter_none

    bearbeiten
    schließen

    play_arrow

    Link
    Helligkeit_4
    Code

      
    import math
      
    print ("The factorial of 5.6 is : ",end="")
      
    print (math.factorial(5.6))
    chevron_right
    
    
    filter_none
    
    

    Ausgabe :

    Die Fakultät von 5.6 ist:
    

    Laufzeit Fehler :

    Traceback (letzter Anruf zuletzt):
      Datei "/home/3987966b8ca9cbde2904ad47dfdec124.py", Zeile 9, in
        print (math.factorial (5.6))
    ValueError: factorial() akzeptiert nur ganzzahlige Werte
    

Dieser Artikel wurde von Manjeet Singh verfasst . Wenn Ihnen GeeksforGeeks gefällt und Sie einen Beitrag leisten möchten, können Sie auch einen Artikel mit Contrib.geeksforgeeks.org schreiben oder Ihren Artikel an Contribute@geeksforgeeks.org senden . Sehen Sie sich Ihren Artikel auf der GeeksforGeeks-Hauptseite an und helfen Sie anderen Geeks.

Bitte schreiben Sie Kommentare, wenn Sie etwas Falsches finden oder weitere Informationen zu dem oben diskutierten Thema teilen möchten.