Boucles en C : Types et Exemples
Boucles en C : Types et Exemples
1. while
2. do. . . while
3. for
2 / 18
Qu'est qu'une boucle ?
Une boucle est une structure de contrôle qui permet de répéter les
mêmes instructions plusieurs fois.
1. while
2. do. . . while
3. for
2 / 18
La boucle While
Syntaxe :
while ( Condition )
{
// Bloc d ' instructions
}
3 / 18
La boucle While
Syntaxe :
while ( Condition )
{
// Bloc d ' instructions
}
3 / 18
La boucle While
Syntaxe :
while ( Condition )
{
// Bloc d ' instructions
}
3 / 18
Exemple de boucle While
4 / 18
Répéter un certain nombre de fois
• On va pour cela créer une variable compteur qui vaudra 0 au début
du programme
• Et que l'on va incrémenter à chaque itération.
Exemple :
int compteur = 0;
5 / 18
Attention aux boucles innies
• Le nombre d'itérations dans une boucle while n'est pas connu à
l'avance. Il dépend de l'évaluation de la condition.
• Lorsque vous créez une boucle, assurez-vous toujours qu'elle peut
s'arrêter à un moment ! Si la condition est toujours vraie, votre
programme ne s'arrêtera jamais !
Exemple :
int compteur = 0;
Syntaxe :
do
{
// Bloc d ' instructions
} while ( Condition );
7 / 18
Exemple de boucle do...while
Exemple :
int compteur = 0;
int somme = 0;
do
{
somme =+ compteur // equivalent a somme = somme + compteur
compteur ++;
} while ( compteur <= 10) ;
8 / 18
La boucle For
Syntaxe :
for ( initialisation ; condition ; pas )
{
// Bloc d ' instructions
}
11 / 18
Attention !
Il est fortement déconseillé de modier la valeur du compteur (et/ou la
valeur de nale) à l'intérieur de la boucle. En eet, une telle action :
• perturbe le nombre d'itérations prévu par la boucle Pour
• présente le risque d'aboutir à une boucle innie
Exemples :
int compteur ;
12 / 18
La boucle For Vs. La boucle While
La boucle Pour est un cas particulier de la boucle While (cas où le
nombre d'itérations est connu et xé) . Tout ce qu'on peut écrire avec
For peut être remplacé par une boucle While (la réciproque n'est pas
forcément vraie).
Exemple :
int compteur ;
for ( compteur = 0 ; compteur < 10 ; compteur ++)
{
printf (" La variable compteur vaut %d !\ n" , compteur ) ;
}
// est equivalent a :
int compteur = 0;
while ( compteur < 10)
{
printf (" La variable compteur vaut %d !\ n" , compteur ) ;
compteur ++;
}
13 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Les boucles imbriqués
Le bloc d'instructions d'une boucle peut
contenir lui même une autre boucle. C'est Historique d'exécution
ce qu'on appelle des boucles imbriquées Inst. i j Achage
1 1 1 i=1 et j=1
Exemple : 2 1 2 i=1 et j=2
3 1 3 i=1 et j=3
int i ;
int j =1;
4 1 4 i=1 et j=4
5 2 1 i=2 et j=1
for ( i = 1 ; i <= 3 ; i ++) 6 2 2 i=2 et j=2
{ 7 2 3 i=2 et j=3
j =1
while (j <= 4) 8 2 4 i=2 et j=4
{ 9 3 1 i=3 et j=1
printf (" i =% d et j =% d !\ n " , i , j); 10 3 2 i=3 et j=2
j ++;
}
11 3 3 i=3 et j=3
} 12 3 4 i=3 et j=4
14 / 18
Quelle boucle puisse-je utiliser pour mon
programme ?
Utilisez la structure qui reète le mieux l'idée du programme que vous
voulez réaliser :
• Si le bloc d'instructions ne doit pas être exécuté si la condition est
fausse, alors utilisez while ou for.
• Si le bloc d'instructions doit être exécuté au moins une fois, alors
utilisez do - while.
• Si le nombre d'exécutions du bloc d'instructions est connu à l'avance
alors utilisez for.
• Si le bloc d'instructions doit être exécuté aussi longtemps qu'une
condition extérieure est vraie alors utilisez while.
Le choix entre for et while n'est souvent qu'une question de préférence ou
d'habitudes.
15 / 18
Quelle boucle puisse-je utiliser pour mon
programme ?
Utilisez la structure qui reète le mieux l'idée du programme que vous
voulez réaliser :
• Si le bloc d'instructions ne doit pas être exécuté si la condition est
fausse, alors utilisez while ou for.
• Si le bloc d'instructions doit être exécuté au moins une fois, alors
utilisez do - while.
• Si le nombre d'exécutions du bloc d'instructions est connu à l'avance
alors utilisez for.
• Si le bloc d'instructions doit être exécuté aussi longtemps qu'une
condition extérieure est vraie alors utilisez while.
Le choix entre for et while n'est souvent qu'une question de préférence ou
d'habitudes.
15 / 18
Quelle boucle puisse-je utiliser pour mon
programme ?
Utilisez la structure qui reète le mieux l'idée du programme que vous
voulez réaliser :
• Si le bloc d'instructions ne doit pas être exécuté si la condition est
fausse, alors utilisez while ou for.
• Si le bloc d'instructions doit être exécuté au moins une fois, alors
utilisez do - while.
• Si le nombre d'exécutions du bloc d'instructions est connu à l'avance
alors utilisez for.
• Si le bloc d'instructions doit être exécuté aussi longtemps qu'une
condition extérieure est vraie alors utilisez while.
Le choix entre for et while n'est souvent qu'une question de préférence ou
d'habitudes.
15 / 18
Quelle boucle puisse-je utiliser pour mon
programme ?
Utilisez la structure qui reète le mieux l'idée du programme que vous
voulez réaliser :
• Si le bloc d'instructions ne doit pas être exécuté si la condition est
fausse, alors utilisez while ou for.
• Si le bloc d'instructions doit être exécuté au moins une fois, alors
utilisez do - while.
• Si le nombre d'exécutions du bloc d'instructions est connu à l'avance
alors utilisez for.
• Si le bloc d'instructions doit être exécuté aussi longtemps qu'une
condition extérieure est vraie alors utilisez while.
Le choix entre for et while n'est souvent qu'une question de préférence ou
d'habitudes.
15 / 18
Quelle boucle puisse-je utiliser pour mon
programme ?
Utilisez la structure qui reète le mieux l'idée du programme que vous
voulez réaliser :
• Si le bloc d'instructions ne doit pas être exécuté si la condition est
fausse, alors utilisez while ou for.
• Si le bloc d'instructions doit être exécuté au moins une fois, alors
utilisez do - while.
• Si le nombre d'exécutions du bloc d'instructions est connu à l'avance
alors utilisez for.
• Si le bloc d'instructions doit être exécuté aussi longtemps qu'une
condition extérieure est vraie alors utilisez while.
Le choix entre for et while n'est souvent qu'une question de préférence ou
d'habitudes.
15 / 18
Quelle boucle puisse-je utiliser pour mon
programme ?
Utilisez la structure qui reète le mieux l'idée du programme que vous
voulez réaliser :
• Si le bloc d'instructions ne doit pas être exécuté si la condition est
fausse, alors utilisez while ou for.
• Si le bloc d'instructions doit être exécuté au moins une fois, alors
utilisez do - while.
• Si le nombre d'exécutions du bloc d'instructions est connu à l'avance
alors utilisez for.
• Si le bloc d'instructions doit être exécuté aussi longtemps qu'une
condition extérieure est vraie alors utilisez while.
Le choix entre for et while n'est souvent qu'une question de préférence ou
d'habitudes.
15 / 18
Exemples pour conclure ...
Exemple avec while :
int N ; /* nombre de donnees */
int NOMB ; /* nombre courant */
int I ; /* compteur */
long SOM ; /* la somme des nombres entres */
double PROD ; /* le produit des nombres entres */
16 / 18
Un exemple pour conclure ...
Exemple avec do...while :
int N ; /* nombre de donnees */
int NOMB ; /* nombre courant */
int I ; /* compteur */
long SOM ; /* la somme des nombres entres */
double PROD ; /* le produit des nombres entres */
SOM =0;
PROD =1;
I =1;
do
{
printf (" %d. nombre : " , I);
scanf ( "%d" , & NOMB );
SOM += NOMB ;
PROD *= NOMB ;
I ++;
} while (I <= N) ;
17 / 18
Un exemple pour conclure ...
Exemple avec for :
18 / 18