我正在做保龄球节目。我正在制作一个程序,将我输入的数字记录在一个列表中
rolls1 = []
rolls2 = []
rolls3 = []
frame = []
i = 0
while i < 10:
i += 1
n1 = int(input("Roll 1: "))
rolls1.append(n1)
if i < 10:
if n1 == 10:
rolls2.append(0)
else:
n2 = int(input("Roll 2: "))
rolls2.append(n2)
elif i == 10:
if (n1 == 10):
n2 = int(input("Roll 2: "))
rolls2.append(n2)
n3 = int(input("Roll 3: "))
rolls3.append(n3)
else:
if (n1 + n2 == 10):
n2 = int(input("Roll 2: "))
rolls2.append(n2)
n3 = int(input("Roll 3: "))
rolls3.append(n3)
else:
n2 = int(input("Roll 2: "))
rolls2.append(n2)
在最后一帧i == 10
中,当我输入n1 = 8
,n2 = 2
时,程序应该继续在n3
中输入一个数字。但是,程序在n2
处停止,因此程序的另一部分发生错误。在else
内制作if
似乎不是解决方案。我如何解决这个问题
当
i==10
时,未定义n2
变量。因此,程序无法正确执行if语句n1 + n2 == 10
。程序可能会转到最后一个else语句。只需将n2
的输入置于最后一个if-else语句之外:相关问题 更多 >
编程相关推荐