Note: exercices basés sur les exercices de Karine Leygues 
pour le cours 420-GKN, introduction au langage C en novembre 2001
au Cégep de Saint-Jérôme.

Ces exercices ont pour but d'utiliser et de comprendre les mécanismes 
des boucles "for" et "while" et de démontrer leur ressemblances et leurs différences.

Rappel:

Initialisation: variable = valeur || variable;

Test de condition: <, >, <=, >=, !=, ==

Tout ce qui n'est pas nul (zéro, 0) est vrai.

Tout ce qui est nul (zéro, 0) est faux.

Opérateur:

! : contraire de [ Exemple: !0 = 1, !5 = 0 ] 

Incrémentation: variable++

Boucle for (pour)

    for (initialisation; condition; incrémentation)
    {
        instruction1; // exécuté si condition est vrai...
        ...
    }
  
    la boucle "for" suit ces étapes...
    
      initialisation
           |
           V
     -condition <-------------------\
    /      |                         \  
   /       V                          \
  /    si vrai: instruction;          /
  \             incrémentation; -----/
   \              
    > si faux: Quitter

Boucle while (tant que)

    while (condition)
    {
        instruction1; // exécuté si condition est vrai;
        ...
    }
  
     -condition <-------------------\
    /      |                         \  
   /       V                          \
  /    si vrai: instruction; ---------/
  \              
   > si faux: Quitter
  

Boucle do ... while (faire ... tant que)

    do
    {
        instruction1; // exécuté au moins une fois;
        ...
    }
    while (condition);

    
    instructions;  <----\
                         \ (si vrai)
    condition -----------/ 
  

Exercice I

Écrire un programme qui affiche les nombres de 1 à 10.

Écrire un programme qui affiche les nombres de 20 à 1 de trois en trois. Exemple :

20 19 18
17 16 15
14 13 12
...

(faire deux fois l'exercice : avec "for" et avec "while").

Exercice II

Écrire un programme qui calcule la somme des entiers de 1 à 100.

Exercice III

Même programme que précédemment, mais cette fois-ci l'utilisateur indique la limite : exemple de 1 à 250.

Exercice IV

Écrire un programme qui saisit un entier et qui l'affiche à l'envers. Par exemple, l'utilisateur saisit 123456 et le programme affiche 654321. Pour cela il faudra utiliser la division et le modulo. Rappel : 153%10 = 3 et 153/10 = 15

Exercice V

Programme qui demande à l'utilisateur de taper un caractère. Celui-ci a trois essais. Si le caractère tapé est un '0' on affiche "gagné", et on arrête. Si au bout de 3 essais, l'utilisateur n'a pas toujours tapé de "0", on sort en affichant "perdu".

Exercice VI

Écrire un programme qui saisit deux nombres entiers positifs et calcule le premier à la puissance du second. Il affiche le résultat.

Solutions des boucles