Função para executar uma rodada
Agora, vamos usar a função do exercício anterior e escrever uma função geral, chamada evaluate_first_roll, para completar uma rodada de Craps. Como mostrado no código de exemplo abaixo, essa função recebe o primeiro lançamento do jogador como entrada e segue a lógica a partir daí. As funções roll_dice e roll_after_point já foram pré-carregadas para você.
Este exercício faz parte do curso
Probability Puzzles in R
Instruções do exercício
- Use o operador
%in%para verificar se o lançamento é 7 ou 11, resultando em vitória imediata. - Use o operador
%in%para verificar se o lançamento é 2, 3 ou 12, resultando em derrota imediata. - Se um point for estabelecido, continue lançando até que o point seja obtido novamente (vitória) ou que saia 7 (derrota).
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
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)
}