Bonjour,
Voila je rencontre un petit problème avec mon code. J'ai du mal avec les boucles aux factorielles. Pouvez-vous m'aidez a traiter corriger ca ? Merci d'avance !
Écrire un programme C qui demande un entier naturel N, et qui calcule sa factorielle en respectant que 0!=1.
NB : la factorielle de 8, notée 8 !, vaut 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8
a) Utiliser while,
b) Utiliser for.
B) For
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
int main ()
{
int nbre, i, résultat ;
printf ("Veuillez saisir un nombre :/n")
scanf ("%, &nbre );
resultat = i ;
for ( i= 8; i<=nbre ; i++) ;
{
resultat = resultat * i ;
}
printf ( " La factorielle de %d est %/n", nbre , resultat ) ;
}
A) While
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
int main ()
{
int nbre, i, résultat ;
printf ("Veuillez saisir un nombre :/n")
scanf ("%, &nbre );
resultat = i ;
while ( i= 8; i<=nbre ; i++) ;
{
resultat = resultat * i ;
}
printf ( " La factorielle de %d est %/n", nbre , resultat ) ;
}
Salut,
Je sais pas si tu as copié / collé ton code depuis ton éditeur, mais il y a plein d'erreurs.
Pour transformer un for en while, suffit pas de remplacer le mot ;)
while ( i= 8; i<=nbre ; i++)
=> CA NE FONCTIONNERA JAMAIS
Si ton prof demance cet exercice c'est qu'il a plus à faire qu'un simple changement de mot.
cadeau
#include <stdio.h>
int main() {
int i, nbr, res;
printf("Veuillez saisir un nombre:\n");
scanf("%d", &nbr);
res = 1;
for (i = 2; i <= nbr; i++) {
res *= i;
}
printf("La factorielle de %d et %d\n", nbr, res);
}
#include <stdio.h>
int main() {
int i, nbr, res;
printf("Veuillez saisir un nombre:\n");
scanf("%d", &nbr);
res = 1;
i = 2;
while (i <= nbr) {
res *= i;
i++;
}
printf("La factorielle de %d et %d\n", nbr, res);
}