Вводятся 4 числа. Нужно вывести их в порядке возрастания. При любых входных данных...

0 голосов
126 просмотров

Вводятся 4 числа. Нужно вывести их в порядке возрастания. При любых входных данных алгоритм должен выполнять не более пяти операций сравнения. Решения с большим количеством сравнений не оцениваются. Оператор вывода во всём тексте алгоритма должен быть единственный.


Информатика (343 баллов) | 126 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

Описание алгоритма:
Пусть даны числа a, b, c, d. Сравниваем a и b, c и d. Затем сравниваем максимальные числа в своих парах (наибольшее из них - максимальное среди всех чисел) и минимальные числа в своих парах (наименьшее из них - минимальное среди всех чисел). Сравниваем оставшиеся два числа и получаем информацию о порядке всех чисел, которую выводим на экран.

Реализация (python 3)
a, b, c, d = map(int, input().split())
if a > b:
    a, b = b, a
if c > d:
    c, d = d, c
if a > c:
    a, c = c, a
if b > d:
    b, d = d, b
if b > c:
    b, c = c, b
print(a, b, c, d)

Пример ввода:
1 4 2 3
Пример вывода:
1 2 3 4

(148k баллов)