我在退出以下循环时遇到问题.这是一个简单的程序,hello
如果随机值大于5则打印.程序运行良好一次但是当我尝试再次运行它时会进入无限循环.
from random import * seed() a = randint(0,10) b = randint(0,10) c = randint(0,10) count = 0 while True: if a > 5 : print ("aHello") count = count + 1 else : a = randint(0,10) if b > 5 : print ("bHello") count = count + 1 else : b = randint(0,10) if c > 5 : print ("cHello") count = count + 1 else : c = randint(0,10) if count == 20 : count = 0 break count = 0
小智.. 8
您的while循环可能会将变量计数增加0,1,2或3.这可能会导致计数从低于20的值变为超过20的值.
例如,如果count的值为18,则会发生以下情况:
a > 5, count += 1 b > 5, count += 1 c > 5, count += 1
在这些操作之后,count的值将是18 + 3 = 21,而不是20.因此,将永远不会满足条件值== 20.
要修复错误,您可以替换该行
if count == 20
同
if count >= 20
或者只是在while循环中更改程序逻辑.
您的while循环可能会将变量计数增加0,1,2或3.这可能会导致计数从低于20的值变为超过20的值.
例如,如果count的值为18,则会发生以下情况:
a > 5, count += 1 b > 5, count += 1 c > 5, count += 1
在这些操作之后,count的值将是18 + 3 = 21,而不是20.因此,将永远不会满足条件值== 20.
要修复错误,您可以替换该行
if count == 20
同
if count >= 20
或者只是在while循环中更改程序逻辑.