La boucle continue parce que l’on va voir comment boucler après et comment contrôler les boucles.
Boucler après
On peut mettre le while (ou le unless) après le bloc de code. Ca peut être utile d’un point de vue de la lisibilité, mais aussi pour faire en sorte de passer au moins une fois dans la boucle.
Voici un exemple de code lisible (mais ne le testez pas, il ne marche pas) :
puts "Houra!" while victoire==true
Quel que soit le test après le while, le code sera au moins exécuté une fois.
Contrôler les boucles
Les boucles sont pratiques pour effectuer des taches répétitives mais on a l’impression qu’elles vont du début à la fin de leur tâche sans que l’on puisse l’arrêter. C’est Usain Bolt : on voit le départ, l’arrivée, mais entre les deux, on ne peut rien faire. On est juste spectateur. On va y remédier.
Je vais reprendre l’exemple du Ruby Book parce que j’ai pas trouvé mieux.
my_x = 115 my_y = 40 while(my_x < 150) my_x += 1 puts my_x break if (my_x % my_y) == 0 end → 116 117 118 119 120
On a 2 variables. On fait une boucle avec un test sur my_x. A chaque boucle, on l’incrémente et on l’affiche. Cette boucle serait infinie si on n’avait pas la ligne suivante qui commence par break : on sort de la boucle si la test (my_x % my_y) == 0 est vrai. Ce pourcentage a l’air bizarre mais c’est tout bête : il donne comme résultat le reste de la division euclidienne entre les deux variables (rappelez-vous de vos cours de primaire… parce que j’ai oublié comment faire).
Pour l’instant mes exemples de code sont sans erreur (n’est-ce pas marvelous?) mais croyez-moi les erreurs de code, j’en rencontre beaucoup (même celles qui ne sont pas référencées). Il va falloir apprendre à gérer ces exceptions…
Flux RSS