Problème de boucle while
pyr
-
fiddy Messages postés 441 Date d'inscription Statut Contributeur Dernière intervention -
fiddy Messages postés 441 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
- Vlc lecture en boucle ✓ - <a href="https://forums.commentcamarche.net/forum/lecteurs-et-supports-video-245">Forum Lecteurs et supports vidéo</a>
- Comment lire en boucle une music sur VLC - <a href="https://forums.commentcamarche.net/forum/lecteurs-et-supports-video-245">Forum Lecteurs et supports vidéo</a>
- Mise à disposition de boucle locale dédiée ✓ - <a href="https://forums.commentcamarche.net/forum/reseaux-sociaux-10">Forum Réseaux sociaux</a>
- Boucle while python ✓ - <a href="https://forums.commentcamarche.net/forum/python-264">Forum Python</a>
- Xiaomi s'éteint tout seul et se rallume en boucle - <a href="https://forums.commentcamarche.net/forum/xiaomi-368">Forum Xiaomi</a>
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,