НачатьНачать бесплатно

Когда прерывать цикл?

Порядок выполнения кода внутри цикла и момент проверки условия выхода имеют большое значение. Приведённые ниже варианты запустят code разное количество раз.

# Сначала код, затем проверка условия
repeat {
    code
    if(condition) {
        break
    }
}

# Сначала проверка условия, затем код
repeat {
    if(condition) {
        break
    }
    code
}

Рассмотрим это на расширенной версии предыдущего упражнения. Для наглядности функция runif() заменена статическим множителем, чтобы исключить случайность.

Это упражнение является частью курса

Средний уровень R для финансов

Посмотреть курс

Инструкции к упражнению

  • Структура цикла repeat уже создана. Заполните пропуски так, чтобы цикл проверял, опустилась ли stock_price ниже 66, и выполнял break в этом случае. Запустите код и обратите внимание на то, сколько раз было выведено значение цены акции.
  • Переместите оператор print(stock_price) после оператора if, но оставьте его внутри цикла repeat. Запустите скрипт снова — сколько раз теперь была выведена stock_price?

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Stock price
stock_price <- 67.55

___ {
  # New stock price
  stock_price <- stock_price * .995
  print(stock_price)
  
  # Check
  if(stock_price ___ ___) {
    print("Stock price is below 66! Buy it while it's cheap!")
    ___
  }

}
Редактировать и запускать код