【发布时间】:2019-09-03 21:02:15
【问题描述】:
我要解决这个 DICE 难题,但我的思绪停留在一个场景上。
在试验中发生了多少次,恰好两个 6 依次滚动?例如,在序列56611166626634416 中出现了两次,恰好两个6 相继抛出。
问题是:如何避免让计数器计算那些 666。
注意:我已经尝试了多个跟踪器(键),但是我遇到了另一个问题:
IndexError: 列表索引超出范围
Throws=[6,6,2,6,6,6,3,6,6,3,6,6,6]
Counter_6 = 0
X=0
for i in range (0,len(Throws)):
if i==len(Throws) or i+1>len(Throws) or i+2>len(Throws):
key1= Throws[i]
key2=0
key3=0
elif i+2>=len(Throws):
key1 = Throws[i]
key2 = Throws[i + 1]
key3 = 0
else:
key1=Throws[i]
key2 = Throws[i + 1]
key3 = Throws[i + 2]
print("key 1 is", key1)
print("key 2 is", key2)
print("key 3 is", key3)
if key1==6 and key2==6 and key3!=6 and X==0:
Counter_6 = Counter_6 + 1
X=1
elif key1!=6 and key2 ==6 and key3==6 and X==0:
Counter_6 = Counter_6 + 1
X=1
elif key1==6 and key2==6 and key3==6:
Counter_6 = Counter_6
X=0
print("number of double 6 are: ",Counter_6)
计数器应该等于 2
【问题讨论】:
标签: python-3.x dice