Boucle for !?

foobar47 -  
beldyn Messages postés 189 Statut Membre -
Salut,
voici mon problème:

int tab_pas[5]={3,7,9,11,13};
for(i=0;i<5;i++){
if (pas == tab_pas[i])
{
if (ConfirmPopup("blabla","blabla")==FALSE)
break;
}
}

Il ne faut pas que l'utilisateur rentre l'une des valeur qui est dans le tableau, donc je lui affiche un chti message ! Il a le choix entre OUI et NON, pour continuer ou non !
Mais que je fasse OUI ou NON, il continue quand même ! ;(
Quelqu'un aurait une chtite idée sur ce bout de code qui ne va pas !?
Le break serait-il mal placé !??
Merci d'avance
;)))
A voir également:

6 réponses

darco
 
salut,
est ce que tout ton code est la ?
car je ne vois pas de variables PAS et i definies.
0
beldyn Messages postés 189 Statut Membre 19
 
Salut,
Tu es sûr que ton confirmpopup te renvoie FALSE et non une valeur? Je pense que le problème est là.

Beldyn
0
senaldo
 
SALUT ,
FOOBAR47

CONTENT TU T INTERESSES A LA PROGRAMMATION.

BON TON PROBLEME EST TRES SIMPLE , IL SUFFIT A TOI DE FAIRE SAVOIR A L ORDI. DANS TON PROGRAMME BIEN SUR , FAISANT UNE ALERTE POUR QUE CES CINQ ENTIERS NE PEUVENT EN AUCUN CAS UTILISABLE DANS TON PROGRAMME. C EST JUSTEMENT
çA TU N AS PAS FAIT. ESSAYE ENCORE TU ARRIVERAS , SINON JE TE MONTRE COMMENT FAIRE MAIS LA REUSSITE.
OKE , A LA PROCHAINE .
0
foobar47
 
Bonjour à tous et merci d'avoir répondu,
les variables sont définies, of course ! ;)))
Pour le ConfirmPopup, j'en ai plein d'autre et ils marchent tous, en fait je voulais procédé de la sorte afin de na pas faire un truc du genre:

if (pas == 3)
{
if (ConfirmPopup("blabla","blabla")==FALSE)
break;
}

if (pas == 7)
{
if (ConfirmPopup("blabla","blabla")==FALSE)
break;
}

if (pas == 9)
{
if (ConfirmPopup("blabla","blabla")==FALSE)
break;
}

if (pas == 11)
{
if (ConfirmPopup("blabla","blabla")==FALSE)
break;
}

if (pas == 13)
{
if (ConfirmPopup("blabla","blabla")==FALSE)
break;
}

ce qui est un peu lourd !
mais j'ai toujours le problème de la boucle !
meric encore !
0

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

Posez votre question
Pitu Messages postés 1460 Statut Contributeur 125
 
Salut à tous.

Plutôt que de faire des "if" imbriqués, ne peux-tu pas faire (dans ta boucle "for", un conditionnement plus complexe, avec un "et" ?
Du genre :
if ( (pas == tab_pas[i])
and
(ConfirmPopup("blabla","blabla")==FALSE) )
{
break;
}

Ou encore, au lieu d'utiliser cette boucle "for", de faire plutôt une boucle "do...while" ou "do...until" ?
Ca me semblerait plus simple à écrire. Donc à lire. Donc à débugger le cas échéant.

A +

 
   (:•Þ  Pitu
0
beldyn Messages postés 189 Statut Membre 19
 
Re,
Essaie de tracer avec des printf ce qui ce passe, ou utilise un débogueur pour faire du pas à pas. J'ai l'impression que ton break te sort du if mais pas du for. Vérifie ce point...
Si il s'agit de ça, ou non d'ailleurs, lors que tu dois sortir de ta boucle, met i à 5, de sorte à ne pas rerentrer dans la boucle.
Tiens nous au courant
A+

Beldyn
0