Beispiel 1: Finden Sie die Fakultät einer Zahl mit der eingebauten Funktion
Python hat eine eingebaute Funktion namens Fakultät() unter dem Mathematik Modul. Das folgende Skript berechnet die Fakultät einer beliebigen Zahl mit einem eingebauten Fakultät() Funktion. In diesem Skript wird jede gültige ganze Zahl als Eingabe verwendet, und die Funktion berechnet den Fakultätswert dieser Zahl und gibt den Fakultätswert der eingegebenen Zahl aus.
#!/usr/bin/env python3
# Mathematikmodul importieren
importieren Mathematik
# Nimm beliebige Zahlenwerte
n= int(Eingang('Beliebige Zahl eingeben: '))
# Finde die Fakultät heraus
Tatsache= Mathematik.Fakultät(n)
# Ergebnis der Fakultät ausgeben
drucken('Die Fakultät von %d ist %d'%(n,Tatsache))
Ausgabe
Nach dem Ausführen des Skripts wird 3 als Eingabenummer angegeben und die Ausgabe von 3!, 6, wird ausgegeben.
Beispiel 2: Finden Sie die Fakultät einer Zahl mit der Schleife
Das folgende Skript zeigt, wie Sie die Fakultät einer beliebigen Zahl berechnen können, ohne eine integrierte Funktion in Python zu verwenden. Hier das zum Schleife wird verwendet, um die Fakultät einer Zahl zu berechnen. Jeder eingegebene ganzzahlige Wert wird genommen und als die Variable namens . gespeichert n . Eine Variable namens Tatsache wird verwendet, um das Fakultätsergebnis zu speichern und wird vor dem Eintritt in die Schleife mit 1 initialisiert. Wenn der Wert von n größer als eins oder gleich eins ist, wird die Schleife 1- bis n+1-mal durchlaufen und den Fakultätswert berechnen. Andernfalls prüft die Schleife, ob der Wert von n gleich 0 oder negativ ist. Wenn der Wert von n 0 ist, ist das Fakultätsergebnis 1; und wenn der Wert von n eine negative ganze Zahl ist, wird eine Fehlermeldung ausgegeben.
#!/usr/bin/env python3# Nimm einen numerischen Wert und speichere ihn in n
n= int(Eingang('Beliebige Zahl eingeben: '))
# Initialisieren Sie die Variable
Tatsache= 1
# Ermitteln Sie die Fakultät, wenn die eingegebene Zahl größer als 0 . ist
wennn> = 1:
# Iteriere die Schleife, um die Zahlen innerhalb von 1 bis n . zu multiplizieren
zumichin Bereich (1,n+1):
Tatsache=Tatsache * ich
# Drucken Sie das fkatorische Ergebnis aus
drucken('Die Fakultät von %d ist %d.'%(n,Tatsache))
anders:
wennn== 0:
# Ergebnis von 0 ausgeben!
drucken('Die Fakultät von',n, ' ist ')
anders:
# Drucken Sie die Fehlermeldung
drucken('Sie müssen eine beliebige positive Zahl eingeben')
Ausgabe
Das Skript wird laut folgendem Screenshot dreimal ausgeführt. Das Skript wird für die Eingabewerte 1, 6 und -8 ausgeführt. Die Ausgänge werden entsprechend den Eingangswerten angezeigt.
Beispiel 3: Finden Sie die Fakultät einer Zahl mit der rekursiven Funktion
Die Funktion, die sich während der Ausführung der Funktion selbst aufruft, wird als rekursive Funktion bezeichnet. Das folgende Skript zeigt, wie die Fakultät einer beliebigen ganzen Zahl mit einer rekursiven Funktion berechnet wird. Nachdem die ganze Zahl als Eingabe genommen wurde, wird die rekursive Funktion faktoriell_resursive () aufgerufen wird, mit dem Eingabewert als Argument. Wenn der Eingabewert 0 oder 1 ist, wird 1 zurückgegeben. Wenn der Eingabewert negativ ist, wird der Argumentwert zurückgegeben. Wenn der Eingabewert größer als 1 ist, ruft sich die Funktion selbst auf, indem sie das Argument immer wieder um 1 subtrahiert, bis sie das Ergebnis der Fakultät berechnet.
#!/usr/bin/env python3# Nimm einen numerischen Wert
Nummer= int(Eingang('Beliebige Zahl eingeben: '))
# Definieren Sie die rekursive Funktion zur Berechnung der Fakultät
deffaktoriell_rekursiv(n):
# Speichern Sie das Fakultätsergebnis von 0 und 1
wennn== 0 odern== 1:
Ergebnis= 1
# Speichern Sie die eingegebene Zahl für den negativen Wert
elifn< 1:
Ergebnis=n
# Finden Sie das faktorielle Ergebnis auf rekursive Weise
anders:
Ergebnis=n*faktoriell_rekursiv(n-1)
# Ergebnis zurückgeben
RückkehrErgebnis
# Rufen Sie die Funktion auf
Tatsache=faktoriell_rekursiv(Nummer)
# Drucken Sie das Ergebnis für eine positive Zahl
wennTatsache> = 0:
drucken('Die Fakultät von %d ist %d.'%(Nummer,Tatsache))
anders:
# Drucken Sie die Nachricht für eine negative Zahl
drucken('Sie müssen eine beliebige positive Zahl eingeben')
Ausgabe
Im folgenden Screenshot wird das Skript dreimal mit den Werten 1, -5 und 8 ausgeführt.
Beispiel 4: Ermitteln der Fakultät einer Zahl mit Ausnahmebehandlung
Die obigen drei Skripte prüfen nur, ob die Zahl positiv oder negativ ist. Das folgende Skript berechnet die Fakultät über eine eingebaute Funktion factorial() mit Ausnahmebehandlung. Wenn der Benutzer eine Eingabe ohne einen ganzzahligen Wert macht, wird eine Ausnahme generiert und eine Fehlermeldung ausgegeben.
#!/usr/bin/env python3# Mathematikmodul importieren
importieren Mathematik
# Trotze dem Versuchsblock
Versuchen:
# Nimm einen numerischen Wert
n= int(Eingang('Beliebige Zahl eingeben: '))
wennn> = 0:
# Finde die Fakultät heraus
Tatsache= Mathematik.Fakultät(n)
# Ergebnis der Fakultät ausgeben
drucken('Die Fakultät von %d ist %d'%(n,Tatsache))
anders:
# Ausnahme auslösen, wenn die Zahl negativ ist
heben Ausnahme('Sie müssen eine beliebige positive Zahl eingeben')
# die Fehlermeldung für die Brucheingabe ausgeben
außer ValueError:
drucken('Sie müssen eine ganze Zahl eingeben')
# Fehlermeldung bei negativer Eingabe drucken
außer Ausnahme wieUnd:
drucken('Fehler:%s'%Und)
Ausgabe
Das Skript wird im folgenden Screenshot dreimal mit den Werten h, -3 und 7 ausgeführt. Hier wird die Ausnahme für den Wert ‚h.‘ generiert.
Abschluss
Dieses Tutorial zeigt einige der verschiedenen Möglichkeiten, wie Sie den Fakultätswert einer Zahl in Python berechnen können. Das Konzept der Fakultät einer Zahl und Python-basierte Methoden zur Berechnung der Fakultät sollten dem Leser nach dem Lesen dieses Tutorials klar sein.