Exercice en Algorithmique

Résolu/Fermé
CALiiMERO Messages postés 69 Date d'inscription jeudi 5 mars 2009 Statut Membre Dernière intervention 16 février 2014 - 9 nov. 2009 à 21:05
 Kahi nn - 1 déc. 2014 à 22:24
Bonjour,

L'exercice est comme suite :

Ecrire un algorithme qui affiche le factoriel d'un nombre donner par l'utilisateur.


Je propose ceci comme solution, mais je crois qu'il y a quelque chose qui cloche que j'arrive pas à trouver :

Algorithme_Factoriel
Variables: n, i, Fact : entiers

Debut
   i <- 0;
   Fact <- 1;
   Ecrire ("Donner un nombre entier :");
   lire (n);
   Tant que (i<=n) faire
     Debut
       i<-i+1;
       Fact<-Fact*i;
     Fin Tant que
   Ecrire ("Le factoriel de",n ,"est", Fact);
Fin

8 réponses

Salut,

il manque la condition si n=0 alors Fact=1

...
lire (n);
si (n=0) alors
Fact<-1;
sinon
...
...
fin si
Ecrire ("Le factoriel de",n ,"est", Fact);
FIN.
2
le neurone isolé
9 nov. 2009 à 21:28
nan!
il manque certes la gestion des nombres négatifs ou à mantisse
mais pas le 0 car on n'entre pas dans la boucle (1 n'est pas inférieur ou égal à 0) donc le résultat est 1
0
CALiiMERO Messages postés 69 Date d'inscription jeudi 5 mars 2009 Statut Membre Dernière intervention 16 février 2014 8
12 nov. 2009 à 21:03
Ok, Merci pour ton aide :)
1
le neurone isolé
9 nov. 2009 à 21:09
Salut

à moi, ça me semble bon.

C'est quoi qui te tracasse ?
L'as-tu "joué" sur le papier ?
0
CALiiMERO Messages postés 69 Date d'inscription jeudi 5 mars 2009 Statut Membre Dernière intervention 16 février 2014 8
9 nov. 2009 à 21:12
La ligne qui me semble fausse c'est :

Fact <- Fact*i ;


Je viens de l'écrire sur un bout de papier avant de le taper sur Comment ça marche.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
le neurone isolé
9 nov. 2009 à 21:26
re
quand je lis "Fact <- Fact * i" je comprends "multiplier le contenu de Fact par le contenu de i et stocker le résultat dans Fact"

Quant à "jouer" l'algorithme sur papier revient à simuler son fonctionnement en écrivant sur papier le contenu des variables à la fin de chaque instruction
0
CALiiMERO Messages postés 69 Date d'inscription jeudi 5 mars 2009 Statut Membre Dernière intervention 16 février 2014 8
9 nov. 2009 à 23:21
Donc c'est correcte l'algorithme que j'ai proposer... ?
0
zasami19 Messages postés 11 Date d'inscription lundi 9 novembre 2009 Statut Membre Dernière intervention 24 janvier 2010 1
9 nov. 2009 à 23:27
oui c just mai normalement on le fait avec les fonctions récursives :)
0
On initialise pes le i dans la boucle suprime i=i+1
0