我正在尝试编写一个程序,要求用户使用while循环输入数字,然后最终返回多少是奇数。
以下是我的代码(我不擅长格式化,请随意编辑!):
count = 0
num = int(input("Enter your number: "))
print ("Here is your number: " + str(num))
while num != -1:
if num % 2 == 1:
count +=1
input num = int(input("Enter your number: "))
print(num)
print(count)
注意:-1不应算作数值!(这是包含的说明)
发布于 2018-07-23 02:43:04
试试这样的东西。
count = 0
num = 0
while num != -1:
inp = input("Enter your number: ")
num = int(inp)
print ("Here is your number: " + inp)
if num % 2 == 1:
count += 1
print (count)
这将一直要求用户输入一个数字,直到他们输入-1为止。
发布于 2018-07-23 02:51:35
您需要确保while
循环在某一时刻结束。在您的示例中,用户必须输入-1
才能退出并看到打印的count
。
尝试下面的代码(它是Python 2,因为您的初始代码似乎是这个版本)。
count = 0
entries = 0
max_entries = 5 # Or however many you want
while entries < max_entries:
# Check number is odd and not -1 (could also check number is >0 if need to exclude all negative numbers)
num = int(input("Enter your number: "))
print "Here is your number: " + str(num)
entries += 1
if num % 2 == 1 and num != -1:
count += 1
print str(count) + " numbers are odd"
我应该补充的是,你没有提到你遇到了什么问题,所以我假设这是循环从未结束。此外,在第10行,input num =
是一个语法错误。开头的input
是不必要的。
https://stackoverflow.com/questions/51468084
复制相似问题