num = int(input("Enter the number:"))
Max_div = int(num / 2)
print("------------Max_div:",Max_div)
div = int(2)
counter = 1
while div <= Max_div:
if num % div == 0:
break
else:
counter = counter + 1
print("before the flood",counter)
continue
print("after the flood")
print("div:/tMax_div",div,Max_div)
div = div + 1
print("Div out of loop",div)
div = div - 1
if div == Max_div:
print("Prime")
else:
print("Not Prime")
如果我删除else块(while循环),这段代码(查找素数)工作正常。不知道继续声明在这里做了什么。它到底在哪里被卡住了? 假设缩进是正确的!
答案 0 :(得分:0)
代码可以是这样的:
num = int(input("Enter the number:"))
Max_div = int(num / 2)
print("------------Max_div:",Max_div)
div = int(2)
while div <= Max_div:
if num % div == 0:
break
else:
div = div + 1
print("before the flood",div) #
continue
print("after the flood") #
print("div:/tMax_div",div,Max_div) #
div = div + 1 #
print("Div out of loop",div) #
div = div - 1 #
if div > Max_div:
print("Prime")
else:
print("Not Prime")
请注意,您可以删除末尾带#的所有行,程序仍能正常运行。 continue
表达式终止循环的迭代,但与break
语句不同,循环继续进行下一次迭代。