La bonne réponse est :

count vaut 13
count vaut 14
count vaut 15
count vaut 16
count vaut 17
  . . . .
et ceci pour toujours

Boucles infinies


Il est possible (et ce n'est pas rare !) de créer accidentellement une boucle qui ne s'achèvera jamais. Dans l'exemple précédant, cela s'est produit car la variable décrément avait une valeur égale à -1. Ainsi, l'instruction 
      count = count - decrement;
ajoutait donc 1 à count ! Ainsi count n'arretait pas d'augmenter, n'atteignant jamais la valeur zéro qu'attendait la condition :
    while ( count >= 0 )   // opérateur SUPERIEUR-ou-égal
De tels boucles sont appelées boucles infinies, ou boucles sans fin et passent souvent inaperçus lorsque l'on programme.

Voici un autre extrait de programme :

    int count  = 20;
    int dec    = -1;
    while ( count __________ 10 )   // quel opérateur relationnel ?
    {
      System.out.println( "count vaut " + count );
      count = count + dec ;
    }
    System.out.println( "Count valait " + count + " lorsque le test échoua");

QUESTION 9:

Quel opérateur relationnel faudrait-il utiliser pour que le fragment de programme affiche les entiers de 20 à 11 inclus ?

Rappel sur les opérateurs relationnels