Boucle R While avec exemples de programmation

Boucle While dans la programmation R

Une boucle While dans la programmation R est une instruction qui continue de s'exécuter jusqu'à ce qu'une condition après le bloc while soit satisfaite.

Syntaxe de la boucle While dans R

Voici la syntaxe de la programmation While Loop dans R :

while (condition) {
     Exp	
}

Organigramme de la boucle R While

Organigramme de la boucle R While
Organigramme de la boucle R While

Note: N'oubliez pas d'écrire une condition de fermeture à un moment donné, sinon la boucle continuera indéfiniment.

Exemples de programmation de boucle While dans R

Exemple 1

Passons par un très simple Programmation R exemple pour comprendre le concept de boucle while. Vous allez créer une boucle et après chaque exécution, ajouter 1 à la variable stockée. Vous devez fermer la boucle, c'est pourquoi nous disons explicitement à R d'arrêter la boucle lorsque la variable atteint 10.

Note: Si vous voulez voir la valeur actuelle de la boucle, vous devez envelopper la variable dans la fonction print().

#Create a variable with value 1
begin <- 1

#Create the loop
while (begin <= 10){

#See which we are  
cat('This is loop number',begin)

#add 1 to the variable begin after each loop
begin <- begin+1
print(begin)
}

Sortie :

## This is loop number 1[1] 2
## This is loop number 2[1] 3
## This is loop number 3[1] 4
## This is loop number 4[1] 5
## This is loop number 5[1] 6
## This is loop number 6[1] 7
## This is loop number 7[1] 8
## This is loop number 8[1] 9
## This is loop number 9[1] 10
## This is loop number 10[1] 11

Exemple 2

Vous avez acheté une action au prix de 50 dollars. Si le prix descend en dessous de 45, nous voulons le vendre à découvert. Sinon, nous le gardons dans notre portefeuille. Le prix peut fluctuer entre -10 à +10 autour de 50 après chaque boucle. Vous pouvez écrire le code comme suit :

set.seed(123)
# Set variable stock and price
stock <- 50
price <- 50

# Loop variable counts the number of loops 
loop <- 1

# Set the while statement
while (price > 45){

# Create a random price between 40 and 60
price <- stock + sample(-10:10, 1)

# Count the number of loop
loop = loop +1 

# Print the number of loop
print(loop)
}

Sortie :

## [1] 2
## [1] 3
## [1] 4
## [1] 5
## [1] 6
## [1] 7
cat('it took',loop,'loop before we short the price. The lowest price is',price)

Sortie :

## it took 7 loop before we short the price. The lowest price is 40