Poursuivre l'exécution d'une boucle while()
Bonjour,
Je suis nouveau ici ainsi que dans le monde de la programmation. ;)
Après de multiples recherches, y compris naturellement sur ce forum, je ne trouve pas la réponse à ma question.
Le problème n'a rien de complexe, et je pense que quelqu'un avec plus d'expérience que moi pourra m'aider.
J'ai une fonction qui remplit parfaitement son rôle (je ne rencontre pas d'erreur et elle produit le type de résultat escompté).
Dans cette fonction, j'ai une boucle while() et j'aimerais qu'elle poursuive son exécution même après avoir produit un résultat.
J'ai vérifié, il est possible de produire plusieurs résultats avec les critères utilisés. Ce n'est donc pas qu'il n'y a qu'un résultat.
Voici le code réduit à l'essentiel :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| while (tests logiques)
{
for (x=0; x< y; x++)
{
(produit des résultats pour le test logique)
}
for (x=0; x< y; x++)
{
(manipule les résultats précédents)
}
} |
J'ai essayé d'utiliser continue; en vain. Cela n'a aucun effet.
Merci par avance pour votre réponse ! :ccool:
[Résolu] Explications ici
EDIT. Code erroné. Se reporter plus bas.
Bien sûr, et cela pourra être utile à d'autres.
Ma problématique, pour rappel : exécuter une instruction jusqu'à ce que des tests logiques soient TRUE, et poursuivre la recherche de résultats (dont on ne connaît pas le nombre) jusqu'à un certain nombre de recherches.
Ma solution :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| int main(){
do {
int i=0; // Initialisation nb d'essais
for (test 1){
}
for (test 2){
}
if (tests logiques formulés négativement : a!=b si on veut a==b par ex.){
i++; // Incrémentation nb d'essais
continue; // Si FALSE, il faut continuer les computations
}
else{ // Si TRUE, on traite les données ici jusqu'à limite du nb d'essais
}
} // boucle do fermée ici
while(i=n); // n = nombre d'essais, on peut mettre i=0 pour ne pas fixer de limite
} |
Et voilà !