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

Функция для одного раунда

Теперь воспользуемся функцией из предыдущего упражнения и напишем общую функцию evaluate_first_roll, которая будет выполнять один полный раунд игры в Craps. Как видно из примера кода ниже, функция принимает результат первого броска стрелка и действует в соответствии с ним. Функции roll_dice и roll_after_point уже загружены заранее.

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

Задачи по теории вероятностей на R

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

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

  • Используйте оператор %in%, чтобы проверить, равен ли результат броска 7 или 11 — это означает немедленную победу.
  • Используйте оператор %in%, чтобы проверить, равен ли результат броска 2, 3 или 12 — это означает немедленное поражение.
  • Если очко установлено, продолжайте бросать кости до тех пор, пока снова не выпадет значение очка (победа) или не выпадет 7 (поражение).

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

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

evaluate_first_roll <- function(roll){
  # Check whether the first roll gives an immediate win
  if(___){
    won <- TRUE
  }
  # Check whether the first roll gives an immediate loss
  if(___){
    won <- FALSE
  }
  if(roll %in% c(4,5,6,8,9,10) ){
    # Roll until the point or a 7 is rolled and store the win/lose outcome
    won <- ___
  }  
  return(won)
}
Редактировать и запускать код