【发布时间】:2017-08-16 10:36:31
【问题描述】:
这是我的任务:-
编写一个程序,反复提示用户输入整数,直到用户输入“完成”。输入“完成”后,打印出最大和最小的数字。如果用户输入的不是有效数字,请使用 try/except 捕获它并发出适当的消息并忽略该数字。输入 7、2、bob、10 和 4 并匹配下面的输出。
期望的输出-
输入无效
最大为 10
最小值为 2
我为此编写了以下代码-
largest = None
smallest = None
count=0
while True:
num = input("Enter a number: ")
if num == "done" :
break
try:
fval=float(num)
count=count+1
if(fval == None):
largest=None
smallest=None
if(largest<fval):
largest=int(fval)
if(count==1):
smallest=fval
else:
if(int(fval) < smallest):
smallest=int(fval)
except:
print("Invalid input")
continue
print("Maximum is", largest)
print("Minumum is", smallest)
它也运行良好。我能够获取最小和最大的条目。但是,最后,编辑器不接受此代码。代码逻辑中是否有任何可能的错误?
提前感谢您的帮助。
【问题讨论】:
-
它不能正常工作。尝试运行您在此处发布的内容。
-
先生,您能告诉我哪里出错了吗?
-
你是用 python2.x 还是 python 3.y 运行这个?
-
在 python 3.y 上运行。
-
参考输入和输出与程序行为的描述相矛盾,因为从未输入“完成”,因此程序不应终止或打印出最小和最大数字。
标签: python python-3.x