1

我正在编写一个程序来查找输入的 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)

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

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

4

1 回答 1

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)
于 2013-06-27T14:57:24.760 回答