我的查找最大值程序Python出错

时间:2013-06-27 14:54:19

标签: python python-3.x max

我正在编写一个程序,找到输入的n个数字的最大值。但我意识到仅输入负数不起作用,因为我将初始最大值设置为0。

max_value = 0
response = 0
while response != 'done':
    response = input("Please enter a number. If ready to calculate, type 'done'\n")
    if response != 'done':
        store_prev_1 = max_value
        if int(response) >= store_prev_1 :
            max_value = int(response)
 print(max_value)

所以基本上,有人可以帮我解决这个问题,以便适用于任何类型的整数/浮点数。

另外,我可以遵循什么逻辑来为最小值做同样的事情?它必须是我为最大值所写的东西(经过你聪明人的纠正之后)

1 个答案:

答案 0 :(得分:4)

使用float('-inf')(负无穷大)作为起始值:

max_value = float('-inf')

任何其他数值总是会大于该值。要搜索最小值,您可以使用正数等值float('inf')

min_value = float('inf')
response = input("Please enter a number. If ready to calculate, type 'done'\n")
while response != 'done':
    if int(response) < min_value:
        min_value = int(response)
    response = input("Please enter a number. If ready to calculate, type 'done'\n")

print(min_value)