请,您能帮我检查一下代码并协助我纠正错误吗?

问题描述 投票:-1回答:1

我是编程新手。我试图在用户输入中找到最小和最大的数字。如果用户输入字符串,则将显示错误消息,并且程序应继续进行,直到用户输入“完成”为止。当我运行我的代码时,似乎“ done”一词被认为是终止代码的一个输入,似乎是执行计算的输入。我不知道如何让程序接受输入,仅对没有字符串变量的整数变量执行计算。下面是我的代码:

largest = None
smallest = None
while True:
    num = input("Enter a number: ")


    if num == "done":
        break

for value in num:
    try:
        imp = int(num)
    except:
        print ("Invalid input")

        continue

    smallest = min(num)

    largest = max(num)

print("Maximum is: ", largest)
print("Minimum is: ", smallest) 
string input integer max minimum
1个回答
0
投票

while循环的每次迭代中,您将覆盖num的值。因此,当用户输入"done"结束循环时,num的当前值为"done"

考虑使用列表存储用户的每个输入(只要该输入不是值"done")。

例如:

nums = []

while True:
    num = input("Enter a number: ")
    if num == "done":
        break
    nums.append(num)

然后像这样遍历nums中的值:

for num in nums:
    # ...
© www.soinside.com 2019 - 2024. All rights reserved.