Наибольшее из трёх целых чисел
Даны три целых числа в виде одной строки. Выведите наибольшее из этих трех чисел. Входные данные:
7 14 106
Выходные данные:
106 - наибольшее
a = []
while True:
line = input("enter the number")
if line:
number = int(line)
a.append(number)
else:
break
max_number = max(a)
print(max_number)
Ответы (3 шт):
Автор решения: Victor VosMottor thanks Monica
→ Ссылка
inp = "7 14 106"
print(max(map(int, inp.split())))
OR
inp = "7 14 106"
print(max(int(i) for i in inp.split()))
OR
inp = "7 14 106"
print(sorted(inp.split())[0])
Автор решения: MarianD
→ Ссылка
line = input()
lst = line.split()
a = map(int, lst)
print(max(a), "- наибольшее")
Объяснение:
«Даны три целых числа в виде одной строки.»
Ваша программа игнорирует это и ожидает любое количество чисел, каждое в отдельной строке.
Значит, вместо вашего цикла используйте только одно применение функции input(), чтобы получить все 3 числа как одну строку, и затем ее разбить, например методом .split():
line = input()
lst = line.split()
В переменной lst вы получите список, но не чисел, а строк, например такой:
["7", "14", "106"]
Теперь нужно еще перевести этот список строк на список чисел, например так:
a = [int(i) for i in lst] # я сохраняю ваше имя для этого списка
или
a = map(int, lst) # функция int применится к всякому элементу списка lst
Только затем примените функцию max():
print(max(a), "- наибольшее")