next up previous
Next: Sélection switch Up: Quelques instructions courantes Previous: Boucle for

Quitter ou continuer avec break et continue

L'on peut quitter à tout moment une boucle avec break;. L'on peut également à tout moment passer directement à la fin de la boucle avec continue.

int a = 0;
for (int i = 0; i<100; i++) {

   if (a < i)
      continue;

   a = 3 * a + i;

   if (a > 12000)
      break;
}

Dans cet exemple, si (a < i) alors l'on passe directement au tour suivant. Sinon, on modifie la valeur de a comme demandé et si (a > 12000) alors on quitte la boucle for.

Ces mot-clés fonctionnent également dans les boucles while. Malheureusement, si deux boucles sont imbriquées l'une dans l'autre, il n'y a pas de moyen de quitter les deux boucles en une seule fois. Un break dans la boucle à l'intérieur fera quitter cette boucle mais pas la boucle externe. Exemple de boucles imbriquées:

int a = 1;
for (int i = 0; i<10; i++) 
   for (int j = 0; j<5; j++) {
     if (i < j)
       break;
     a += 1;
   }



Guillaume Charpiat 2006-12-07