Вновь велогонщики собрались узнать, кто из них быстрее. Им предстоит пройти трассу длиной 43872м, и нам нужно вновь определить победителя.
На этот раз нам известны средние скорости трёх фаворитов — Пети, Васи и Толи.
Кто из них пришёл к финишу первым?
Формат ввода
В первой строке записана средняя скорость Пети.
Во второй — Васи.
В третьей — Толи.
Формат вывода:
Имя победителя гонки.
Примечание
Гарантируется, что победителем стал только один.
Пример
Ввод
5
7
10
Вывод
Толя
Решение
Чуть усложненный вариант прошлой задачи, направленный на развитие навыка построение более сложных логических конструкций. Как и в прошлой задаче, с помощью int() и input() запоминаем время Васи, Пети и Толи в переменные, а потом сравниваем и выводим результат. Основную трудность составляют логические условия с логическим и (and). Часто в решении применяется ошибочный подход if vasya > petya > tolya, что приводит пропуска варианта когда время Васи действительно лучшее, но время Толи лучше времени Пети. КАк следствие прихоится писать по два оператора сравнения на каждого из участников. Правильный подход, состоит в использовании оператора and – if vasya > petya and vasya > tolya
Посмотреть код
petya = int(input())
vasya = int(input())
tolya = int(input())
if vasya > petya and vasya > tolya:
print('Вася')
elif petya > vasya and petya > tolya:
print('Петя')
elif tolya > vasya and tolya > petya:
print('Толя')
else:
print('непонятно')
petya = int(input())
vasya = int(input())
tolya = int(input())
if petya > tolya and petya > vasya:
print(‘Петя’)
elif vasya > tolya and vasya > petya:
print(‘Вася’)
elif tolya > vasya and tolya > petya:
print(‘Толя’)
Решение проверено.
petya = int(input())
vasya = int(input())
tolya = int(input())
if tolya < petya > vasya:
print(‘Петя’)
elif petya < tolya > vasya:
print(‘Толя’)
else:
print(‘Вася’)
Это правильное решение. Но я его не разместил, потому что оно очень узкоспециализированное: в большинстве языков программирования вы не сможете построить такую конструкцию, в отличии от представленных решений выше.