Boucle tant que R
Boucles
Les boucles peuvent exécuter un bloc de code tant qu'une condition spécifiée est atteinte.
Les boucles sont pratiques car elles permettent de gagner du temps, de réduire les erreurs et de rendre le code plus lisible.
R a deux commandes de boucle :
while
bouclesfor
boucles
R Boucles tant que
Avec la while
boucle, nous pouvons exécuter un ensemble d'instructions tant qu'une condition est VRAIE :
Exemple
Imprimer i
tant que i
est inférieur à 6 :
i <- 1
while (i < 6) {
print(i)
i <- i + 1
}
Dans l'exemple ci-dessus, la boucle continuera à produire des nombres allant de 1 à 5. La boucle s'arrêtera à 6 car 6 < 6
est FALSE.
La while
boucle nécessite que les variables pertinentes soient prêtes, dans cet exemple, nous devons définir une variable d'indexation i
, que nous définissons sur 1.
Remarque : n'oubliez pas d'incrémenter i, sinon la boucle continuera indéfiniment.
Casser
Avec l' break
instruction, nous pouvons arrêter la boucle même si la condition while est TRUE :
Exemple
Sortir de la boucle si i
est égal à 4.
i <- 1
while (i < 6) {
print(i)
i <- i + 1
if
(i == 4) {
break
}
}
La boucle s'arrêtera à 3 car nous avons choisi de terminer la boucle en utilisant l' break
instruction when i
est égal à 4 ( i == 4
).
Suivant
Avec l' next
instruction, nous pouvons ignorer une itération sans terminer la boucle :
Exemple
Ignorez la valeur de 3 :
i <- 0
while (i < 6) {
i <- i + 1
if (i == 3) {
next
}
print(i)
}
Lorsque la boucle passe la valeur 3, elle l'ignore et continue à boucler.
Yahtzee !
Si .. Sinon combiné avec une boucle While
Pour illustrer un exemple pratique, disons que nous jouons à un jeu de Yahtzee !
Exemple
Impression "Yahtzee !" Si le nombre de dés est 6 :
dice <- 1
while (dice <= 6) {
if (dice < 6) {
print("No
Yahtzee")
} else {
print("Yahtzee!")
}
dice <- dice
+ 1
}
Si la boucle passe les valeurs comprises entre 1 et 5, elle imprime "No Yahtzee". Chaque fois qu'il dépasse la valeur 6, il imprime "Yahtzee!".