@smi33
очарован IT, уровень - preElementary

Дан рост трех человек. Необходимо вывести сообщение «По росту» или «Не по росту». Возможно ли решить данное задание без ифов?

С ифами все просто:

h1 = int(input())
h2 = int(input())
h3 = int(input())
if h1 <= h2 <= h3:
    print('По росту.')
else:
    print('Не по росту!')
  • Вопрос задан
  • 841 просмотр
Решения вопроса 3
@zexer
h1 = int(input())
h2 = int(input())
h3 = int(input())

result = ['Не по росту!', 'По росту!']
compare = h1 <= h2 <= h3
result[compare]
Ответ написан
hottabxp
@hottabxp Куратор тега Python
Сначала мы жили бедно, а потом нас обокрали..
Ну раз пошла такая пьянка, тогда можно 3 значения занести в список. Потом отсортировать список и сравнить его с первым списком. Если совпадают, получим True, если нет - False.
h1 = int(44)
h2 = int(45)
h3 = int(46)

my_dict = {True:'По росту',
			False:'Не по росту!'}

my_list = [h1,h2,h3]

print(my_dict.get(my_list == sorted(my_list)))

>>> По росту

Можно код сократить, но так более понятно.
Ответ написан
fox_12
@fox_12 Куратор тега Python
Расставляю биты, управляю заряженными частицами
>>> def check(arr):
...    while arr == sorted(arr):
...        print('по росту')
...        return
...    print('не по росту')
... 
>>> check([1,2,3])
по росту
>>> check([2,1,3])
не по росту
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы