。练习8-1
在掷骰子游戏中,玩家(射手)准备掷出两个骰子,每个骰子都有六个面。如果掷出的总数为2、3或12,则该射手失败。如果总数是7或11,则对手(他)胜出。如果是其他任何得分,那么此得分将变成新的目标,它将被称为“点”。使用以下辅助函数为掷骰子生成得分:
two_d6 <- function(n)
{
random_numbers <- matrix(
sample(6,2*n,replace = TRUE),
nrow = 2
)
colSums(random_numbers)
}
编写代码为掷骰子生成得分,并将以下值分配给game_status和point变量
得分 游戏状态 点
2,3,12 FALSE NA
7,11 TRUE NA
4,5,6,8,9,19 NA 与得分相同
```r
#replace = TRUE有放回抽样
touzi <- c(1:6)
two_d6 <- function(n)
{
random_numbers <- matrix(
sample(touzi,2*n,replace = T),
nrow = 2
)
print(random_numbers)
colSums(random_numbers)
for(i in colSums(random_numbers))
{
if(i==2)
{
message("game_status is FALSE")
message("the point is NA")
}else if(i==3)
{
message("game_status is FALSE")
message("the point is NA")
}else if(i==12)
{
message("game_status is FALSE")
message("the point is NA")
}else if(i==7)
{
message("game_status is TRUE")
message("the point is NA")
}else if(i==11)
{
message("game_status is TRUE")
message("the point is NA")
}else
{
message("game_status is NA")
message("same grades ")
}
}
}
two_d6(1)