Python Program pro nalezení faktoriálu čísla
⚡ Chytré shrnutí
Faktoriál čísla v Python je součin všech kladných celých čísel až do tohoto čísla. Python vypočítává ho pomocí smyčky for, kontroly if-else, rekurze nebo vestavěné funkce math.factorial().
Níže uvedené části ukazují čtyři způsoby výpočtu faktoriálu v Python — cyklus for, verze s funkcí if-else, rekurze a math.factorial() — plus základní algoritmus a aplikace.
Faktoriál čísla pomocí smyčky
Vezměme si příklad z Python kód, který bere jako vstup kladné celé číslo pro určení faktoriálu kladných celých čísel. V následujícím kódu smyčka začíná jedničkou a poté se násobí každým číslem, které předchází skutečnému číslu, jehož faktoriál má být určen.
Následující Python Kód ilustruje faktoriální funkci pomocí smyčky.
Python kód:
print ("Input a number") factorialIP = int (input ()) ffactor23 = 1 for j in range (1, factorialIP+1): ffactor23 = ffactor23 * j print ("The factorial of the number is “, ffactor23)
Výstup:
Input a number
4
The factorial of the number is 24
Výše Python Program přijímá pouze kladná čísla a neprovádí kontrolu záporných čísel. V tomto programu je faktor 1, když je j rovno 1. Když je j rovno 2, faktor se vynásobí 2 a program bude provádět akci, dokud j nedosáhne hodnoty 4, tedy 24.
Faktoriál čísla pomocí příkazu IF…else
Následující Python Kód ilustruje faktoriálovou funkci pomocí funkce. Na rozdíl od verze se smyčkou tento program před výpočtem faktoriálu také kontroluje záporná čísla.
V předchozím Python V kódu nebyla provedena kontrola záporných čísel, což způsobilo, že faktoriální funkce byla neúplná a náchylná k zobrazení chybové zprávy, pokud jsou jako vstup zadána záporná čísla.
V daném kódu smyčka začíná jedničkou a násobí se každým předchozím číslem a funkce také ověřuje vstup pro záporná čísla.
Python kód:
print("Enter a number for the purpose of determining factorial") factorialIP = int(input()) def factorial(factorialIP): if factorialIP < 0: print ('Factorial does not exist') factor=0 return factor elif factorialIP == 0: factor=1 return factor print(factor) else: factor = 1 for j in range (1, factorialIP+1): factor = factor * j return factor print ("The factorial of the number is ", factorial(factorialIP))
Výstup:
1) Enter a number to determine factorial -4 Factorial does not exist The factorial of the number is 0 2) Enter a number to determine factorial 4 Factorial does not exist The factorial of the number is 24
Toto Python Program přijímá kladná čísla a pomocí příkazů if a else kontroluje záporná čísla, přičemž při zadané hodnotě 4 správně vrací 24.
Faktoriál čísla pomocí rekurze
Následující Python Kód ilustruje faktoriálovou funkci pomocí rekurze. V tomto příkladu rekurzivní funkce, která přijímá jako vstup kladné celé číslo, určuje faktoriálové číslo.
Python kód:
print("Enter a number for the purpose of determining factorial") def factorial(num2): if num2 < 0: return 'Factorial does not exist' elif num2 == 0: return 1 else: return num2 * factorial(num2-1) number1 = int(input()) print("The factorial of the number is",factorial(number1))
Výstup:
Enter a number for the purpose of determining factorial 4 The factorial of the number is 24
Rekurzi lze vysvětlit jako koncept, ve kterém funkce vyvolaná v Python Modul se může volat sám znovu a znovu. Běží, dokud Python podmínka přítomná v modulu je splněna, přičemž volaná funkce je předávána s hodnotou.
Ve výše uvedeném Python V programu se funkce def factorial rekurzivně volá, dokud číslo nedosáhne nuly. Jakmile číslo dosáhne nuly, inicializuje ho na 1, čímž rekurze ukončí.
Faktoriál čísla pomocí math.factorial()
Následující Python Kód ilustruje funkci faktoriálu pomocí math.factorial(), kterou lze použít importem modulu math.
Tato funkce nepřijímá záporná celá čísla a při zadání čísel s desetinnou čárkou vyvolá chybu hodnoty.
Python kód:
print("Enter a number for computing factorial") import math number1 = int(input()) print("The factorial is as computed comes out to be ") print(math.factorial(number1))
Výstup:
Enter a number for computing factorial 4 The factorial, as computed, comes out to be 24
Algoritmus pro faktoriální program v Python
Vezměme si příklad, který ilustruje koncept faktoriálu.
Pro určení faktoriálu 5 postupujte takto:
5! = 5 x (5-1) x (5-2) x (5-3) x (5-4) 5! =120
Tady, 5! je vyjádřen jako 120.
Následující diagram pomáhá pochopit algoritmus výpočtu faktoriálu a v tomto případě si vezměme příklad faktoriálu 4!
Algoritmus s obrázkovým příkladem faktoriálu 4!
Aplikace faktoriálu v Python
Faktoriál čísla má širokou úroveň aplikací v matematice. Zde jsou důležité aplikace Python:
- Python pomáhá při výpočtech, následovaný tiskem faktoriálu v rychlejším a efektivnějším provedení než jiné dostupné programovací jazyky.
- Jedno Python kód je snadno srozumitelný a lze jej replikovat napříč různými platformami a faktoriál Python Program lze začlenit do několika úkolů zaměřených na tvorbu matematických modelů.


