Les boucles while
La boucle while permet de répéter une liste d’instructions tant que la condition est vérifiée.
Tant que celle-ci est vraie (true), la boucle se répète. Dès que la condition est fausse (false), la boucle s’arrête. Il faut s’arranger, à un moment, pour que la condition ne soit plus vraie.
Voici un exemple de la syntaxe d’une boucle while:
while (condition) {
instruction_1;
instruction_2;
instruction_3;
}
Ex:
var number = 1;
while (number < 10) {
number++;
}
alert(number); // Affiche : « 10 »
Exemple:
Nous allons utiliser une boucle while, qui va demander, à chaque passage dans la boucle, un prénom supplémentaire. La boucle ne s’arrêtera que lorsque l’utilisateur choisira de ne plus entrer de prénom.
var nicks = ‘ ‘,
nick,
proceed = true;
while (proceed) {
nick = prompt(‘Entrez un prénom :’);
if (nick) {
nicks += nick + ‘ ‘; // Ajoute le nouveau prénom ainsi qu’une espace juste après
} else {
proceed = false; // Aucun prénom n’a été entré, donc on fait en sorte d’invalider la condition
}
}
alert(nicks); // Affiche les prénoms à la suite
La boucle do while
Ressemble très fortement à la boucle while, sauf que dans ce cas la boucle est toujours exécutée au moins une fois. Dans le cas d’une boucle while, si la condition n’est pas valide, la boucle n’est pas exécutée. Avec do while, la boucle est exécutée une première fois, puis la condition est testée pour savoir si la boucle doit continuer.
Voici la syntaxe d’une boucle do while:
do {
instruction_1;
instruction_2;
instruction_3;
} while (condition);
La boucle for
La boucle for est une boucle utilisée pour répéter une liste d’instructions un certain nombre de fois.
Le schéma d’une boucle for est le suivant :
for (initialisation; condition; incrémentation) {
instruction_1;
instruction_2;
instruction_3;
}
Dans l’exemple suivant, on va afficher cinq fois une boîte de dialogue à l’aide de alert(), qui affichera le numéro de chaque itération :
for (var iter = 0; iter < 5; iter++) {
alert(‘Itération n°’ + iter);
}
Dans le premier bloc, l’initialisation, on initialise une variable appelée iter qui vaut 0 ; le mot-clé var est requis, comme pour toute initialisation. On définit dans la condition que la boucle continue tant qu’ iter est strictement inférieure à 5. Enfin, dans le bloc d’incrémentation, on indique qu’ iter sera incrémentée à chaque itération terminée.
Reprenons notre exemple
for (var nicks = », nick; true;) {
nick = prompt(‘Entrez un prénom :’);
if (nick) {
nicks += nick + ‘ ‘;
} else {
break;
}
}
alert(nicks);
Modifions la boucle de manière à compter combien de prénoms ont été enregistrés. Pour ce faire, nous allons créer une variable de boucle, nommée i, qui sera incrémentée à chaque passage de boucle.
![]()
Ecrivez un programme qui affiche tous les nombres entre 1 et 100 avec les exceptions suivantes :
- Il affiche « Fizz » à la place du nombre si celui-ci est divisible par 3.
- Il affiche « Buzz » à la place du nombre si celui-ci est divisible par 5 et non par 3.
- Il affiche « FizzBuzz » à la place du nombre si celui-ci est divisible à la fois par 3 et par 5.
![]()
Exercices:
![]()
![]()
En rajoutant une moyenne et optimisation du code:
![]()
![]()
![]()
Commentaires récents