Premiers pas en JavaScript
20.1 boucle WHILE
cuy copyleft
  See You Why?  

 


test sur la boucle FOR (19.9) | | les BREAK et/ou continue dans les boucles (20.2)

Contenu

 

 

I. le WHILE dans les boucles

Contrairement à la boucle FOR qui généralement compte le nombre de passages dans la boucle, la boucle avec WHILE est une série d'instructions qui se répèteront tant que la condition est validée... donc qui arrêteront de se répéter dès que la condition ne sera plus vérifiée. J'ai toujours dit qu'un enseignant devait pouvoir répéter quelque chose en n'employant pas les mêmes mots, je crois que j'ai réussi ici :-).

Cette précision permet cependant de mettre une caractéristique en évidence... qui fera la distinction entre deux formes assez semblables du while dans une boucle :
si la condition while n'est pas remplie au départ, le contenu de la boucle while ne sera jamais exécuté ;
si la condition while n'est pas remplie au départ, le contenu de la boucle do ... while sera exécuté une fois ;

La boucle While teste en premier lieu la condition et éxécute les instructions qu'elle contient tant que cette condition est vraie.

À l'inverse, la boucle Do ... While permet de passer une première fois dans le code de la boucle avant de tester la condition contenue dans la partie while fermant la boucle.

Ici aussi, les tutoriels rencontrés parlent souvent de condition d'arrêt, alors qu'il s'agit d'une condition de maintien. Nous n'insisterons pas plus.

On pourrait dès lors traduire la boucle while par « répète tant que... » ;
alors qu'on pourrait traduire la boucle do ... while par « recommence si... ».
Les initiés de JS évitent d'utiliser cette deuxième formulation pour des raisons que nous développeront plus loin.

Voici la syntaxe de ces deux boucles :

WHILE DO ... WHILE
while (condition) {
     instruction_1;
     instruction_2;
     instruction_3;
}
do {
     instruction_1;
     instruction_2;
     instruction_3;
} while (condition);

Une erreur fréquente lors de l'usage des boucles contenant while est que la variable incrémentable doit être initialisée non seulement hors, mais surtout avant la structure de code répétée.

Attention :
lors de recherche avec un moteur de recherche (google ou autres), il est fréquent de trouver des informations non applicables directement à JS. En effet, les boucles sont fréquentes en informatique et les logiciels ont souvent des syntaxes 'relativement' proches : JavaScript, C, C++, Java, PHP, ASP et j'en passe.

 

A. la vraie boucle WHILE

La boucle WHILE est simple d'application : il s'agit d'exécuter les instructions notées entre les accolades, tant que la condition notée entre parenthèses est vraie.

while (condition) {
     instruction_1;
     instruction_2;
     instruction_3;
}

Un exemple pour illustrer cette boucle... pourquoi ne pas reprendre l'exemple développé dans le chapitre précédent, celui qui affichait les nombres de 1 à 10 et leur carré :

var nbr = 1;
while (nbr<= 10) {
      document.write("Ligne " + nbr + "<br>" + nbr + " dont le carré est " + nbr*nbr ="<br>");
      nbr++;
}

Vous remarquerez la déclaration préalable de la variable nbr,
la condition entre parenthèses
et les instructions notées entre accolades,
chacune se terminant par un point-virgule.

B. la "méchante" boucle DO ... WHILE

Je vous avais annoncé les dangers de cette boucle.

Au niveau syntaxe, l'usage du même mot clé WHILE est dangereux, d'autant plus que dans la boucle DO ... WHILE, la condition doit être suivie d'un point-virgule, ce qui est inhabituel en JS.
Comme, de plus, rien n'oblige d'écrire le WHILE derrière l'accolade fermante de la fonction DO, bon courage pour retrouver les éventuelles fautes dans votre programme.

De plus, dans la boucle DO ... WHILE, toutes les instructions (même s'il n'y en a qu'une) doivent être notées entre les accolades, alors que dans le simple WHILE, les accolades sont facultatives si l'instruction est unique... vous comprendrez pourquoi j'ai suggéré de les employer en tout temps...

Ce risque d'erreur est tellement grand que même des tutoriels oublient de le présenter et de noter ce point-virgule[1]. D 'autres le notent sans insister sur cet aspect inhabituel d'un point-virgule après des parenthèses conditionnelles.

 

 

 

II. La boucle WHILE avec BREAK ou CONTINUE

voir suite >>>

 

 

VIII. Exercices relatifs aux conditions WHILE...

voir suite >>>

 

IX. Test relatif aux conditions WHILE...

voir suite >>>

 

 

 


test sur la boucle FOR (19.9) | | les BREAK et/ou continue dans les boucles (20.2)

[1] cf. HscriptsCom, Erci-informatique, et autres...

 

Merci de votre visite à partir de :

Vous êtes sur :
https://cuy.be/cours/jvs/jvs_200_boucle_while.html

partager sur FaceBook...           consulter sur FaceBook...

 

copyleft
Des liens ne fonctionnent plus ?
Avez-vous des suggestions ?
des commentaires, des corrections, un encouragement... ?
Pour info : Non, il n'y a pas de version papier ou DOC, PDF, etc. de ces notes.


Envoyez-moi un E-Mail (cuy(point)w(at)skynet(point)be)

Attention (at) signifie @ et (point) signifie .

Accueil CUY = See you why?

Compteur gratuitEasyCounter     BelStat Monitored by BelStat - Your Site Counts
La 1 000 000e page a été visitée le 21 mai 2010.
La 2 000 000e page a été visitée ce 18 mars 2012, vers midi.
La 3 000 000e page a été visitée ce 7 janvier 2014 entre 18 h et 18 h 45,
La 4 000 000e page a été visitée ce 5 juin 2015 entre 15 h 49 et 15 h 52,
La 5 000 000e page a été visitée ce 29 aout 2017 après 23 h 30,
Et la 6 000 000e page visitée, trop tôt pour y penser ?
 
et, d'après BelStat, CUY est visité surtout en semaine, peu le weekend...
moins et irrégulièrement pendant les vacances :

visites sur 3 mois, de la mi octobre 2013 à la mi janvier 2014.
 
La 3 333 333e page visitée a eu lieu ce mardi 10 juin 2014, en début d'après midi...
La 3 666 666e page visitée a eu lieu ce dimanche 28 decembre 2014, vers 16 h...
Un tiers de million de pages visitées en 154 jours cela fait une moyenne de 2165 pages visitées par jour...
Deux tiers de million de pages visitées en 355 jours soit une moyenne de 1878 pages visitées par jour...
et seulement 1195 pages visitées quotidiennement pendant les vacances estivales
de la mi juin à la mi septembre 2014

Vous voulez lire quelques messages reçus ?
quelques encouragements ?
Cliquez ici


Fin septembre 2009, installation de ce compteur
qui ne compte chaque nouvel ordinateur visiteur qu'une seule fois
free counter
 
m-à-j du 22/11/2021 :

Depuis cette fin septembre 2009, parmi les 210 pays (sur 274 drapeaux connus) qui nous ont visité,
voici les 100 pays qui nous visitent le plus, 
Nos petits visiteurs, classés par date de visite, où un seul ordi nous a visité, sont :
199. Turkmenistan (TM May 10, 2017) ; 200. Lesotho (LS March 1, 2017) ;
201. Turks and Caicos Island (TC January 18, 2016
202. Cook Islands (CK September 19, 2015)  203. Faroe Islands (FO January 27, 2015
204. Virgin Islands American (VI November 12, 2014) ;
205. Belize (BZ September 29, 2014) ;206. Eswatini - Swaziland (SZ July 21, 2014) ;
207. Grenada (GD April 3, 2014) ; 208. Timor-Leste (TI March 29, 2014) ;
209. American Samoa (AS December 26, 2012) ; 210. Guyana (GY November 5, 2010).