Exercice langage C: Figures en mode texte

  1. Ecrivez un programme qui affiche les valeurs 1 à 9 en ligne, à l'aide d'une boucle for:
      123456789
  2. Modifiez le programme pour qu'il affiche 9 lignes similaires, à l'aide de 2 boucles for:
      123456789 
      123456789 
      . 
      . 
      .  
      123456789
  3. Comment modifier le programme pour qu'il affiche un triangle ?
      1 
      12 
      123 
      1234 
      12345 
      123456 
      1234567
      12345678
      123456789
  4. Modifiez une dernière fois votre programme, pour qu'il affiche une pyramide inversée:
              1 
             12 
            123 
           1234 
          12345 
         123456 
        1234567 
       12345678
      123456789

L'affichage d'une ligne se fait à l'aide d'une simple boucle for. Pour afficher plusieurs lignes, il faudra imbriquer 2 boucles for.

Pour le triangle, la longueur d'une ligne est fonction du numéro de ligne. Donc, la condition d'arrêt de la boucle écrivant une ligne dépendra du compteur de la boucle parent (j).

Pour la pyramide inversée, il suffit de rajouter un nombre variable d'espaces avant les nombres.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#include 

using namespace std;

int main(int argc, char **argv)
{
  // 1.
  for (int i=1; i<=9; i++)
    cout << i;
  cout << endl << endl;

  // 2.
  for (int j=1; j<=9; j++) {
    for (int i=1; i<=9; i++)
      cout << i;
    cout << endl;
  }
  cout << endl;

  // 3.
  for (int j=1; j<=9; j++) {
    for (int i=1; i<=j; i++) // la boucle va de 1 a j !!
      cout << i;
    cout << endl;
  }
  cout << endl;

  // 4.
  for (int j=1; j<=9; j++) {
    for (int i=1; i<=(9-j); i++)
      cout << " ";
    for (int i=1; i<=j; i++)
      cout << i;
    cout << endl;
  }
  cout << endl;

  return 0;
}