Problème de boucle while
pyr
-
fiddy Messages postés 11653 Date d'inscription Statut Contributeur Dernière intervention -
fiddy Messages postés 11653 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour à tous,
je voudrais savoir si quelqu'un voit pourquoi ma boucle ne fonctionne pas...
Voilà, lerci d'avance.
int main(){
int again,c,n,S[200][200];
again=0;
while (again=0){
c=0;
printf("\n Que voulez'vous faire?");
printf("\n Tapez 1 pour afficher un sapin non décoré et dont vous choisissez la taille.");
printf("\n Tapez 2 pour afficher un sapin non décoré et la taille est aléatoire.");
printf("\n Tapez 3 pour afficher un sapin décoré et dont vous choisissez la taille");
printf("\n Tapez 4 pour afficher un sapin décoré et la taille est aléatoire.");
printf("\n Tapez 5 pour quitter.");
printf("\n\n\t");
scanf("%d",&c);
printf("\n");
switch(c){
case 1: {printf("\n Quelle est la taille de votre sapin? (en nombre de branche)\n\n ");
scanf("%d",&n);
isnd(S,n);
asnd(S,n);}
break;
case 2: {n=rand()%(35-1)+1;
isnd(S,n);
asnd(S,n);}
break;
case 3: {printf("\n Quelle est la taille de votre sapin? (en nombre de branche)\n\n ");
scanf("%d",&n);
isd(S,n);
asd(S,n);}
break;
case 4: {n=rand()%(35-1)+1;
isd(S,n);
asd(S,n);}
break;
case 5: again=1;
break;
default: printf("La valeur entrée est incorrecte.");
break;
}
printf("\n");}
printf("et merde");
return 0;}
je voudrais savoir si quelqu'un voit pourquoi ma boucle ne fonctionne pas...
Voilà, lerci d'avance.
int main(){
int again,c,n,S[200][200];
again=0;
while (again=0){
c=0;
printf("\n Que voulez'vous faire?");
printf("\n Tapez 1 pour afficher un sapin non décoré et dont vous choisissez la taille.");
printf("\n Tapez 2 pour afficher un sapin non décoré et la taille est aléatoire.");
printf("\n Tapez 3 pour afficher un sapin décoré et dont vous choisissez la taille");
printf("\n Tapez 4 pour afficher un sapin décoré et la taille est aléatoire.");
printf("\n Tapez 5 pour quitter.");
printf("\n\n\t");
scanf("%d",&c);
printf("\n");
switch(c){
case 1: {printf("\n Quelle est la taille de votre sapin? (en nombre de branche)\n\n ");
scanf("%d",&n);
isnd(S,n);
asnd(S,n);}
break;
case 2: {n=rand()%(35-1)+1;
isnd(S,n);
asnd(S,n);}
break;
case 3: {printf("\n Quelle est la taille de votre sapin? (en nombre de branche)\n\n ");
scanf("%d",&n);
isd(S,n);
asd(S,n);}
break;
case 4: {n=rand()%(35-1)+1;
isd(S,n);
asd(S,n);}
break;
case 5: again=1;
break;
default: printf("La valeur entrée est incorrecte.");
break;
}
printf("\n");}
printf("et merde");
return 0;}
A voir également:
- Problème de boucle while
- Mise à disposition de boucle locale dédiée ✓ - Forum Freebox
- Xiaomi s'éteint tout seul et se rallume en boucle - Forum Xiaomi
- Application error: a client-side exception has occurred while loading www.leboncoin.fr (see the browser console for more information). - Forum Réseaux sociaux
- Vlc lecture en boucle ✓ - Forum Lecteurs et supports vidéo
- Redémarrage en boucle Xiamo mi note 10 - Forum Xiaomi
Tchô!!
Lorsque tu souhaites utiliser la comparaison (si une variable est égal à, tant que c'est égal à, etc.), il faut utiliser ==. Lorsque tu souhaites affecter une valeur à une variable, il faut utiliser =.
Dans ton cas, tu mettais : while (again=0){. Le compilateur comprendra :
int again=0; while(again) { again=0; }Comme 0 correspond à false, la boucle ne sera jamais parcourue.
J'espère que tu y vois plus clair maintenant.
Cdlt,