0

我应该修改一个程序,以便循环在 3 次迭代后停止。这是一个非终止循环,但我改变了它,现在它根本没有出现。你能看出我做错了什么吗?

i = 1

while_iterations = 1

while (i <= 3):
    print("Starting while iteration number", while_iterations)
    for number in range(5, 10):

        if (number % 2 == 1):
            print("Found an odd number: ", number)
        else:
            print(number, "is not an odd number")
        print("End of for loop.")
        print()
    while_iterations = while_iterations + 1
    i=i+1
4

2 回答 2

3

您的循环没有运行,因为i = 1条件是while( i > 3 )这意味着它评估为 false 并跳过整个循环。

编辑

while_iterations = 1

while (while_iterations <= 3):
    print("Starting while iteration number", while_iterations)
    for number in range(5, 10):
        if (number % 2 == 1):
            print("Found an odd number: ", number)
        else:
            print(number, "is not an odd number")
        print("End of for loop.")
        print()
    while_iterations = while_iterations + 1

在那里,这个循环终止。您不需要两个索引变量,while_iterations 就足够了。

于 2012-09-21T02:47:40.793 回答
0

它陷入了无限循环,因为条件while (i <= 3):始终是True因为您i在最初将其设置为1. 尝试将条件更改为:

while (while_iterations <= 3):

或者,您可以删除while_iterations所有对它的引用并将其替换为i.

于 2012-09-21T02:55:15.333 回答