logo

Programme Python pour trouver la factorielle d'un nombre

Qu'est-ce que la factorielle ?

Factoriel est un entier non négatif. C'est le produit de tous les entiers positifs inférieurs ou égaux au nombre que vous demandez en factoriel. Il est désigné par un signe d'exclamation (!).

Exemple:

 n! = n* (n-1) * (n-2) *........1 4! = 4x3x2x1 = 24 

La valeur factorielle de 4 est 24.

Remarque : La valeur factorielle de 0 est toujours 1. (Violation des règles)

Exemple -

 num = int(input(&apos;Enter a number: &apos;)) factorial = 1 if num <0: 0 print(' factorial does not exist for negative numbers') elif num="=" 0: print('the of is 1') else: i in range(1,num + 1): of',num,'is',factorial) < pre> <p> <strong>Output:</strong> </p> <pre> Enter a number: 10 The factorial of 10 is 3628800 </pre> <p> <strong>Explanation -</strong> </p> <p>In the above example, we have declared a <strong>num</strong> variable that takes an integer as an input from the user. We declared a variable factorial and assigned 1. Then, we checked if the user enters the number less than one, then it returns the factorial does not exist for a negative number. If it returns false, then we check num is equal to zero, it returns false the control transfers to the else statement and prints the factorial of a given number.</p> <h3>Using Recursion</h3> <p>Python recursion is a method which calls itself. Let&apos;s understand the following example.</p> <p> <strong>Example -</strong> </p> <pre> # Python 3 program to find # factorial of given number def fact(n): return 1 if (n==1 or n==0) else n * fact(n - 1); num = 5 print(&apos;Factorial of&apos;,num,&apos;is&apos;,) fact(num)) </pre> <p> <strong>Output:</strong> </p> <pre> Factorial of 5 is 120 </pre> <p> <strong>Explanation -</strong> </p> <p>In the above code, we have used the recursion to find the factorial of a given number. We have defined the <strong>fact(num)</strong> function, which returns one if the entered value is 1 or 0 otherwise until we get the factorial of a given number.</p> <h3>Using built-in function</h3> <p>We will use the math module, which provides the built-in <strong>factorial()</strong> method. Let&apos;s understand the following example.</p> <p> <strong>Example -</strong> </p> <pre> # Python program to find # factorial of given number import math def fact(n): return(math.factorial(n)) num = int(input(&apos;Enter the number:&apos;)) f = fact(num) print(&apos;Factorial of&apos;, num, &apos;is&apos;, f) </pre> <p> <strong>Output:</strong> </p> <pre> Enter the number: 6 Factorial of 6 is 720 </pre> <p>We have imported the math module that has <strong>factorial()</strong> function. It takes an integer number to calculate the factorial. We don&apos;t need to use logic.</p> <hr></0:>

Explication -

Dans l'exemple ci-dessus, nous avons déclaré un sur une variable qui prend un entier comme entrée de l’utilisateur. Nous avons déclaré une variable factorielle et lui avons attribué 1. Ensuite, nous avons vérifié si l'utilisateur saisit un nombre inférieur à un, alors il renvoie la factorielle n'existe pas pour un nombre négatif. S'il renvoie faux, alors nous vérifions que num est égal à zéro, il renvoie faux, le contrôle est transféré à l'instruction else et imprime la factorielle d'un nombre donné.

Utiliser la récursivité

La récursivité Python est une méthode qui s'appelle elle-même. Comprenons l'exemple suivant.

Exemple -

 # Python 3 program to find # factorial of given number def fact(n): return 1 if (n==1 or n==0) else n * fact(n - 1); num = 5 print(&apos;Factorial of&apos;,num,&apos;is&apos;,) fact(num)) 

Sortir:

 Factorial of 5 is 120 

Explication -

Dans le code ci-dessus, nous avons utilisé la récursion pour trouver la factorielle d'un nombre donné. Nous avons défini le fait fonction, qui renvoie un si la valeur saisie est 1 ou 0 sinon jusqu'à obtenir la factorielle d'un nombre donné.

Utilisation de la fonction intégrée

Nous utiliserons le module mathématique, qui fournit le module intégré factorielle() méthode. Comprenons l'exemple suivant.

Exemple -

 # Python program to find # factorial of given number import math def fact(n): return(math.factorial(n)) num = int(input(&apos;Enter the number:&apos;)) f = fact(num) print(&apos;Factorial of&apos;, num, &apos;is&apos;, f) 

Sortir:

 Enter the number: 6 Factorial of 6 is 720 

Nous avons importé le module mathématique qui a factorielle() fonction. Il faut un nombre entier pour calculer la factorielle. Nous n'avons pas besoin d'utiliser la logique.