Écrire le programme factoriel en Python

Writing Factorial Program Python



La factorielle d'un nombre est le nombre que vous obtenez après avoir multiplié tous les nombres de 1 à ce nombre. La factorielle d'un nombre est indiquée par le symbole '!'. Par exemple, si nous voulons trouver la factorielle de 4, notée 4!, alors le résultat serait 1x2x3x4 = 24. Il existe de nombreuses façons de trouver la factorielle d'un nombre. La factorielle peut être déterminée en Python à l'aide de la fonction intégrée pour les fonctions de boucle et récursives. Ce tutoriel montre comment la factorielle d'un nombre peut être déterminée à l'aide de diverses fonctions de Python.

Exemple 1 : Trouver la factorielle d'un nombre à l'aide de la fonction intégrée

Python a une fonction intégrée nommée factoriel() sous le math module. Le script suivant calcule la factorielle de n'importe quel nombre à l'aide d'un factoriel() fonction. Dans ce script, tout nombre entier valide sera pris comme entrée, et la fonction calculera la valeur factorielle de ce nombre et imprimera la valeur factorielle du nombre d'entrée.







#!/usr/bin/env python3
# Importer un module mathématique
importer math
# Prenez n'importe quelle valeur numérique
m= entier(saisir('Entrez n'importe quel nombre :'))
# Découvrez la factorielle
fait= math.factoriel(m)
# Imprimer le résultat de la factorielle
imprimer('La factorielle de %d est %d'%(m,fait))

Sortir



Après avoir exécuté le script, 3 est donné comme numéro d'entrée et la sortie de 3!, 6, est imprimée.







Exemple 2 : Trouver la factorielle d'un nombre à l'aide de la boucle

Le script suivant montre comment vous pouvez calculer la factorielle de n'importe quel nombre sans utiliser de fonction intégrée dans Python. Ici le pour La boucle est utilisée pour calculer la factorielle d'un nombre. Toute valeur entière d'entrée sera prise et stockée en tant que variable nommée m . Une variable nommée fait est utilisé pour stocker le résultat factoriel et est initialisé à 1 avant d'entrer dans la boucle. Si la valeur de m est supérieur à un ou égal à un, la boucle itérera de 1 à n+1 fois et calculera la valeur factorielle. Sinon, la boucle vérifiera si la valeur de n est égale à 0 ou négative. Si la valeur de n est 0, alors le résultat factoriel sera 1 ; et si la valeur de n est un entier négatif, alors un message d'erreur sera affiché.

#!/usr/bin/env python3

# Prendre une valeur numérique et la stocker dans n
m= entier(saisir('Entrez n'importe quel nombre :'))
# Initialiser la variable
fait= 1
# Découvrez la factorielle si le nombre d'entrée est supérieur à 0
sim> = 1:
# Itérer la boucle pour multiplier les nombres entre 1 et n
pourjedans gamme (1,n+1):
fait=fait * je
# Imprimer le résultat fctorial
imprimer('La factorielle de %d est %d.'%(m,fait))
autre:
sim== 0:
# Affiche le résultat de 0 !
imprimer('La factorielle de',m, ' est ')
autre:
# Imprimer le message d'erreur
imprimer('Vous devez entrer n'importe quel nombre positif')

Sortir



Le script est exécuté trois fois, selon la capture d'écran suivante. Le script est exécuté pour les valeurs d'entrée 1, 6 et -8. Les sorties sont affichées en fonction des valeurs d'entrée.

Exemple 3 : Trouver la factorielle d'un nombre à l'aide de la fonction récursive

La fonction qui s'appelle pendant l'exécution de la fonction est appelée la fonction récursive. Le script suivant montre comment calculer la factorielle de n'importe quel nombre entier à l'aide d'une fonction récursive. Après avoir pris le nombre entier comme entrée, la fonction récursive factorielle_résursive () sera appelé, avec la valeur d'entrée comme argument. Si la valeur d'entrée est 0 ou 1, alors 1 sera renvoyé. Si la valeur d'entrée est négative, la valeur de l'argument sera renvoyée. Si la valeur d'entrée est supérieure à 1, la fonction s'appellera elle-même en soustrayant l'argument de 1 encore et encore jusqu'à ce qu'elle calcule le résultat de la factorielle.

#!/usr/bin/env python3
# Prendre une valeur numérique
numéro= entier(saisir('Entrez n'importe quel nombre :'))
# Définir la fonction récursive pour calculer la factorielle
déffactoriel_récursif(m):
# Stocke le résultat factoriel de 0 et 1
sim== 0 oum== 1:
résultat= 1
# Stocke le numéro d'entrée pour la valeur négative
elifm< 1:
résultat=m
# Trouver le résultat factoriel de manière récursive
autre:
résultat=n*factorielle_récursive(n-1)
# Renvoie le résultat
revenirrésultat
# Appeler la fonction
fait=factoriel_récursif(numéro)
# Imprime le résultat pour un nombre positif
sifait> = 0:
imprimer('La factorielle de %d est %d.'%(numéro,fait))
autre:
# Imprimer le message pour nombre négatif
imprimer('Vous devez entrer n'importe quel nombre positif')

Sortir

Dans la capture d'écran suivante, le script est exécuté trois fois avec les valeurs 1, -5 et 8.

Exemple 4 : Trouver la factorielle d'un nombre avec gestion des exceptions

Les trois scripts ci-dessus vérifient uniquement si le nombre est positif ou négatif. Le script suivant calcule la factorielle via une fonction factorielle () intégrée avec gestion des exceptions. Si l'utilisateur donne une entrée sans valeur entière, une exception sera générée et un message d'erreur sera imprimé.

#!/usr/bin/env python3
# Importer un module mathématique
importer math
# Défiez le bloc try
essayer:
# Prendre une valeur numérique
m= entier(saisir('Entrez n'importe quel nombre :'))
sim> = 0:
# Découvrez la factorielle
fait= math.factoriel(m)
# Imprimer le résultat de la factorielle
imprimer('La factorielle de %d est %d'%(m,fait))
autre:
# Lever l'exception si le nombre est négatif
augmenter Exception('Vous devez entrer n'importe quel nombre positif')
# affiche le message d'erreur pour l'entrée fractionnaire
sauf Erreur de valeur:
imprimer('Vous devez entrer un nombre entier')
# Imprimer le message d'erreur pour l'entrée négative
sauf Exception commeEt:
imprimer('Les erreurs'%Et)

Sortir

Le script est exécuté trois fois avec les valeurs h, -3 et 7 dans la capture d'écran suivante. Ici, l'exception est générée pour la valeur « h ».

Conclusion

Ce tutoriel montre quelques-unes des différentes manières de calculer la valeur factorielle d'un nombre en Python. Le concept de la factorielle d'un nombre et les méthodes basées sur Python pour calculer la factorielle devraient être clairs pour le lecteur après avoir lu ce tutoriel.