我很难弄清楚如何用R编写程序。
我想用红色下注1美元,如果我赢了,我又下注1美元,如果我输了,我再次下注。该程序应该运行到我赢得10美元或下注变得大于100为止。
这是我的代码:
W=0
B=1
for(i=sample(0:1,1)){
B<-1
W<-0
while(W<10 & B<=100){
if(i=1){
W<-W+B
B<-B
}else{
B<-2*B
}
print(B)
}
}
i
确定我输还是赢。我使用print(B)
来查看程序是否运行。在这一点上,无论如何,B都等于1。
最佳答案
在这种情况下,for
循环没有意义。您应该在while
循环中每次都采样另一个样本。
B = 1
W = 0
while(W<10 & B<=100){
i=sample(0:1,1)
if(i==1){
W<-W+B
B<-B
}else{
B<-2*B
}
print(B)
}
另外,在您的原始
for
循环中,在循环开始之前,您需要在)
之后加一个右括号sample(0:1,1)
。没有它,该程序将无法按预期运行。另外,在描述逻辑相等时,应使用
==
而不是=
。
关于r - 赌博算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30069349/