Python

Skrivning af faktorprogrammet i Python

Skrivning af faktorprogrammet i Python
Faktoriet for et tal er det antal, du får, efter at du har multipliceret alle tal fra 1 til det tal. Et tal er betegnet med '!'symbol. For eksempel, hvis vi vil finde ud af faktor 4, betegnet 4!, så ville resultatet være 1x2x3x4 = 24. Der er mange måder at finde ud af, hvor stort et nummer er. Faktoriet kan bestemmes i Python ved hjælp af den indbyggede funktion til loop- og rekursive funktioner. Denne vejledning viser, hvordan et tal kan bestemmes ved hjælp af forskellige funktioner i Python.

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.

5 bedste arkadespil til Linux
I dag er computere seriøse maskiner, der bruges til spil. Hvis du ikke kan få den nye høje score, ved du hvad jeg mener. I dette indlæg vil du kende n...
Kamp om Wesnoth 1.13.6 Udvikling frigivet
Kamp om Wesnoth 1.13.6 udgivet i sidste måned, er den sjette udviklingsudgivelse i 1.13.x-serien, og den leverer en række forbedringer, især til bruge...
Sådan installeres League Of Legends på Ubuntu 14.04
Hvis du er fan af League of Legends, er dette en mulighed for dig at prøvekøre League of Legends. Bemærk, at LOL understøttes på PlayOnLinux, hvis du ...