Déterminer la factorielle d'un nombre

Calculer la factorielle d'un nombre

Vous devez coder un programme permettant de calculer et afficher la factorielle d'un nombre.

En mathématiques, la factorielle d'un nombre se note "n!" (n étant un nombre entier).

La factorielle d'un nombre n se calcule par une multiplication : c'est le produit des nombres entiers non nuls inférieur ou égaux à n.

Exemple : 4! = 1x2x3x4 = 24

On souhaite limiter le programme au calcul de la factorielle d'un nombre entier compris entre 1 et 100.

Si l'utilisateur saisie un nombre supérieur à 100, il faudra afficher un message d'erreur.

Conseils :

  • Il ne faut pas se précipiter => on ne saisie pas des lignes de code sans avoir effectuer un minimum de préparation ;

  • Réfléchissez aux actions qui doivent être entreprises et dans quels ordres => écrire un algorithme qui structurera votre programme ;

  • Il n'y a jamais une solution unique mais toujours plusieurs ;

  • Ne vous découragez pas, se tromper est légitime et vous permet de progresser.

Question

Étape 1 : écrire un algorithme du programme.

Indice

L'algorithme commence par l'acquisition du nombre.

Ensuite il faut tester si le nombre saisie est valide (compris entre 0 et 100).

Si oui, on fait le calcul de la factorielle.

Sinon, on affiche un message d'erreur.

Pour finir, on affiche le résultat du calcul de la factorielle du nombre

Solution

Proposition d'algorithme partiel

DÉBUT

Acquérir nombre

|

Si 0 < nombre < 101 alors

| faire Calcul factorielle

Sinon

| afficher Message d'erreur

|

Afficher Résultat

FIN

L'algorithme est incomplet. Il manque la partie concernant le calcul de la factorielle.

Solution

Proposition d'algorithme complet

DÉBUT

Acquérir Nombre

|

Si 0 < Nombre < 101 alors

| Tant que N < Nombre

| | N = N + 1

| | Fact = Fact * N

Sinon

| afficher Message d'erreur

|

Afficher Fact

FIN

Question

Étape 2 : Coder cet algorithme en langage Python puis l'exécuter afin de le valider.

Maintenant, c'est à vous de jouer.

Je me tiens à votre disposition, via le groupe de discussion de Pronote, si besoin.

Vous pouvez m'envoyer votre programme finalisé ou non finalisé (avec des questions) à mon adresse professionnelle : herve.fougassie@ac-limoges.fr

Bon courage.

Indice

Ne pas oublier de configurer votre variable en nombre entier (type int) après en avoir fait l'acquisition.

Il faut donner une valeur initiale (c'est à dire avant la structure alternative) au variables utilisées pour le calcul de la factorielle (N et Fact dans notre cas).

Solution

Et non, pas de solution cette fois.