在下面的代码中,while
循环将打印z
直到z
达到 0 或 11 的值,因为它的值是通过掷硬币来增加或减少的。
如何让这个函数打印硬币被翻转的次数?
z <- 5
while(z >= 1 && z <= 10) {
print(z)
coin <- rbinom(1, 1, 0.5)
if(coin == 1) {
z <- z +1
} else {
z <- z -1
}
}
在下面的代码中,while
循环将打印z
直到z
达到 0 或 11 的值,因为它的值是通过掷硬币来增加或减少的。
如何让这个函数打印硬币被翻转的次数?
z <- 5
while(z >= 1 && z <= 10) {
print(z)
coin <- rbinom(1, 1, 0.5)
if(coin == 1) {
z <- z +1
} else {
z <- z -1
}
}
您可以将硬币翻转的次数存储为另一个变量,flips
在下面的代码中调用。然后每次执行 while 循环时,只需递增flips
. 然后flips
在函数结束时返回。
coin_flip <- function(z) {
flips <- 0
while(z >= 1 && z <= 10) {
print(z)
coin <- rbinom(1, 1, 0.5)
if(coin == 1) {
z <- z +1
} else {
z <- z -1
}
flips <- flips + 1
}
paste("The coin flipped", flips, "times.")
}
set.seed(1234)
coin_flip(5)
# [1] 5
# [1] 4
# [1] 5
# [1] 6
# [1] 7
# [1] 8
# [1] 9
# [1] 8
# [1] 7
# [1] 8
# [1] 9
# [1] 10
# [1] "The coin flipped 12 times."