Eksempel 1: Find et nummer med en indbygget funktion ved hjælp af den indbyggede funktion
Python har en indbygget funktion med navnet fabrik () under matematik modul. Det følgende script beregner faktoren for ethvert nummer ved hjælp af en indbygget fabrik () fungere. I dette script tages ethvert gyldigt heltal som input, og funktionen beregner faktorværdien af dette nummer og udskriver faktorværdien af inputnummeret.
#!/ usr / bin / env python3# Importer matematikmodul
importer matematik
# Tag eventuelle talværdier
n = int (input ("Indtast et hvilket som helst tal:"))
# Find ud af det faktiske
faktum = matematik.fabrik (n)
# Udskriv resultatet af fabrikken
print ("Faktoriet for% d er% d"% (n, faktum))
Produktion
Efter kørsel af scriptet gives 3 som inputnummer og output på 3!, 6 er trykt.
Eksempel 2: Find et nummer ved hjælp af sløjfen
Det følgende script viser, hvordan du kan beregne faktoren for et hvilket som helst tal uden at bruge nogen indbygget funktion i Python. Her, den til loop bruges til at beregne et tals faktor. Enhver indgangsheltalsværdi tages og gemmes som den navngivne variabel n. En variabel med navnet faktum bruges til at gemme faktorresultatet og initialiseres til 1, inden det går ind i sløjfen. Hvis værdien af n er mere end en eller lig med en, så vil sløjfen gentage 1 til n + 1 gange og beregne den faktiske værdi. Ellers kontrollerer sløjfen, om værdien af n er lig med 0 eller negativ. Hvis værdien af n er 0, vil faktorresultatet være 1; og hvis værdien af n er et negativt heltal, udskrives en fejlmeddelelse.
#!/ usr / bin / env python3# Tag en numerisk værdi, og gem i n
n = int (input ("Indtast et hvilket som helst nummer:"))
# Initialiser variablen
faktum = 1
# Find ud af faktoren, hvis inputnummeret er mere end 0
hvis n> = 1:
# Iterer sløjfen til flere numre inden for 1 til n
for jeg inden for rækkevidde (1, n + 1):
fakta = fakta * i
# Udskriv det fcatoriale resultat
print ("Faktoren for% d er% d."% (n, faktum))
andet:
hvis n == 0:
# Udskriv resultatet af 0!
print ("Faktoriet om", n, "er")
andet:
# Udskriv fejlmeddelelsen
print ("Du skal indtaste et hvilket som helst positivt tal")
Produktion
Scriptet udføres tre gange ifølge følgende skærmbillede. Scriptet udføres for inputværdierne 1, 6 og -8. Udgangene vises i henhold til inputværdierne.
Eksempel 3: Find et nummer med en rekursiv funktion
Den funktion, der kalder sig selv under udførelsen af funktionen kaldes den rekursive funktion. Det følgende script viser, hvordan man beregner faktoren for ethvert heltal ved hjælp af en rekursiv funktion. Efter at have taget heltallet som input, er den rekursive funktion factorial_resursive () kaldes med inputværdien som argument. Hvis inputværdien er 0 eller 1, returneres 1. Hvis inputværdien er negativ, returneres argumentværdien. Hvis inputværdien er mere end 1, kalder funktionen sig selv ved at trække argumentet med 1 igen og igen, indtil det beregner resultatet af faktoriet.
#!/ usr / bin / env python3# Tag en numerisk værdi
number = int (input ("Indtast et hvilket som helst nummer:"))
# Definer den rekursive funktion for at beregne faktoriet
def factorial_recursive (n):
# Gem det faktuelle resultat på 0 og 1
hvis n == 0 eller n == 1:
resultat = 1
# Gem inputnummeret til negetiv værdi
elif n < 1:
resultat = n
# Find det faktuelle resultat på en rekursiv måde
andet:
resultat = n * factorial_recursive (n-1)
# Returner resultatet
returneresultat
# Ring til funktionen
faktum = faktorisk rekursiv (antal)
# Udskriv resultatet for et positivt tal
hvis faktum> = 0:
print ("Faktoren for% d er% d."% (antal, fakta))
andet:
# Udskriv meddelelsen med negativt tal
print ("Du skal indtaste et hvilket som helst positivt tal")
Produktion
I det følgende skærmbillede udføres scriptet tre gange med værdierne 1, -5 og 8.
Eksempel 4: Find faktoren for et nummer med undtagelseshåndtering
Ovenstående tre scripts kontrollerer kun, om antallet er positivt eller negativt. Det følgende script beregner faktoriet via en indbygget faktor () -funktion med undtagelseshåndtering. Hvis brugeren giver noget input uden et heltal, genereres en undtagelse, og der udskrives en fejlmeddelelse.
#!/ usr / bin / env python3# Importer matematikmodul
importer matematik
# Defsér prøveblokken
prøve:
# Tag en numerisk værdi
n = int (input ("Indtast et hvilket som helst tal:"))
hvis n> = 0:
# Find ud af det faktiske
faktum = matematik.fabrik (n)
# Udskriv resultatet af fabrikken
print ("Faktoriet for% d er% d"% (n, faktum))
andet:
# Hæv undtagelsen, hvis tallet er negativt
hæv undtagelsen ("Du skal indtaste et hvilket som helst positivt tal")
# udskriv fejlmeddelelsen for fraktioneret input
undtagen ValueError:
print ("Du skal indtaste heltal")
# Udskriv fejlmeddelelse for negativ indtastning
undtagen undtagelse som e:
print ('Fejl:% s'% e)
Produktion
Scriptet udføres tre gange med værdierne h, -3 og 7 i det følgende skærmbillede. Her genereres undtagelsen for værdien 'h.''
Konklusion
Denne vejledning viser nogle af de forskellige måder, hvorpå du kan beregne den faktiske værdi for et tal i Python. Konceptet med et talfaktor og Python-baserede metoder til beregning af et fakultet skal være klart for læseren efter at have læst denne vejledning.