R Цикл while с примерами программирования
Цикл while в программировании на R
Цикл while в программировании на R — это оператор, который продолжает выполняться до тех пор, пока не будет выполнено условие после блока while.
Синтаксис цикла while в R
Ниже приведен синтаксис цикла While в программировании на R:
while (condition) { Exp }
Блок-схема цикла R While

Внимание: Не забудьте в какой-то момент написать условие закрытия, иначе цикл будет продолжаться бесконечно.
Цикл while в примерах программирования на R
Пример 1
Давайте пройдемся по очень простому R программирование пример, чтобы понять концепцию цикла while. Вы создадите цикл и после каждого запуска добавите 1 к сохраненной переменной. Вам необходимо закрыть цикл, поэтому мы явно говорим R прекратить цикл, когда переменная достигнет 10.
Внимание: Если вы хотите увидеть текущее значение цикла, вам нужно обернуть переменную внутри функции 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) }
Вывод:
## 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
Пример 2
Вы купили акцию по цене 50 долларов. Если цена опустится ниже 45, мы хотим продать ее. В противном случае мы оставим его в нашем портфолио. Цена может колебаться от -10 до +10, около 50 после каждого цикла. Вы можете написать код следующим образом:
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) }
Вывод:
## [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)
Вывод:
## it took 7 loop before we short the price. The lowest price is 40