Pb boucles et factoriel en algo
lucile
-
new -
new -
Bonjour, voila j'ai un tit soucie je cherche a créer un programme permettant de calculer la factoriel d'un nombre mais je n'y arrive pas ca me donne 0 et je sait pas pq sa fait un ti moment que je cherche sans succé aider moi svp
var
f : entier
i : entier
n : entier
début
afficher ("entrer n")
saisir (n)
i <- 0
tant que i < n faire
f<- (f * i) * (n-1)
i<- i+1
ftant
affichage ("n! : ", f)
fin
var
f : entier
i : entier
n : entier
début
afficher ("entrer n")
saisir (n)
i <- 0
tant que i < n faire
f<- (f * i) * (n-1)
i<- i+1
ftant
affichage ("n! : ", f)
fin
A voir également:
- Pb boucles et factoriel en algo
- Xiaomi s'éteint tout seul et se rallume en boucle - Forum Xiaomi
- Tv orange chargement en boucle ✓ - Forum TV & Vidéo
- Problème xiaomi redmi note 8t s'allume et s'éteint vibre - Forum Xiaomi
- Huawei s'allume et s'éteint en boucle - Forum Huawei
- Téléphone Xiaomi REDMi 10 qui s'éteint tout seul - Forum Xiaomi
5 réponses
Va sur ce site :
http://www.haypocalc.com/manuel/1.6/fct/factorial.php
Ya un algo Itératif et un récursif pour le calcul du factoriel
L'Itératif est plus simple à mettre en place
http://www.haypocalc.com/manuel/1.6/fct/factorial.php
Ya un algo Itératif et un récursif pour le calcul du factoriel
L'Itératif est plus simple à mettre en place
merci pour ta réponce je suis aller voire je sait maintenant que c'est mon calcule qui foire mais j'ai essayer ceux de ton site et sa ne marche pas non plus c'est bizzard
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
j'ai pas super compris sa en fait
f = 1;
Pour (i=2, i<=n, i++)
f = f * i;
FinPour
afficher (f);
f = 1;
Pour (i=2, i<=n, i++)
f = f * i;
FinPour
afficher (f);
Si n=0 alors 0!=f=1 (ne rentre pas dans la boucle)
Si n=1 alors 1!=f=1 (ne rentre pas dans la boucle)
Si n=2 alors le programme rentre une fois dans la boucle f=1*2
Si n=3 alors le programme rentre 2 fois dans la boucle f=1*2=2 puis f=2*3=6
En fait, en faisant démarrer la boucle à i=2 il exclue les 2 cas bizarres qui sont 1! et 0! qui font tout deux 1
Si n=1 alors 1!=f=1 (ne rentre pas dans la boucle)
Si n=2 alors le programme rentre une fois dans la boucle f=1*2
Si n=3 alors le programme rentre 2 fois dans la boucle f=1*2=2 puis f=2*3=6
En fait, en faisant démarrer la boucle à i=2 il exclue les 2 cas bizarres qui sont 1! et 0! qui font tout deux 1