Сортировка трех чисел

  • 3
  • Недоступна
На планете Линейный Хаос живут изоморфы. Говорят, именно они изобрели методы сортировки и у них в голове все чрезвычайно упорядочено. Визы на их планету они выдают только тем, кто знает не менее 7 методов сортировки. Сделаем первый шаг к Линейному Хаосу: упорядочим три введенные с клавиатуры числа по убыванию, а затем выведем их на экран.
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (173)
  • популярные
  • новые
  • старые
Для того, что бы оставить комментарий вы должны авторизоваться
timaxoff4 уровень, Санкт-Петербург
вчера, 11:28
Забавный факт. Если обернуть код в
while (true) {}
, чтобы быстро проверить значения и не перезапускать программу, то валидатор не пропускает задачу.
Alexander Seychas4 уровень
вчера, 10:35
Решено! За 8 If! И из этих 8 if, 4 искали среднее число!
timaxoff4 уровень, Санкт-Петербург
вчера, 11:31
достаточно шести 1. a>=b && b>=c 2. a>=b && c>=b && a>=c повторить для чисел b и c
Alexander Seychas4 уровень
вчера, 12:13
Возможно. Был рад и этому решению)
Дмитрий4 уровень, Одесса
позавчера, 12:41
Зачем всё усложнять, если можно всё сделать с одним циклом if, просто переберите все варианты с оператором &&(или) и всё получиться.
timaxoff4 уровень, Санкт-Петербург
вчера, 11:31
оператор && это не "или", а "и"
Дмитрий4 уровень, Одесса
4 часа назад
точно, путаю всегда с оператором "||"
Katsiaryna Aleinik4 уровень
позавчера, 01:33
Еще раз решила эту задачу, используя метод Math.max и Math.min ))) 4 строчки)))
Katsiaryna Aleinik4 уровень
пятница, 16:15
Я использовала вложенный оператор if, немного более громоздко, но! зато довольно просто) if(a>= b &a>=c){ If(c>=b){.....System.....} else{System.....} } Вот такую конструкцию я повторила 3 раза))) Тут главное со знаком == не запутаться и не нагородить лишних;-) удачи)
Don Fear10 уровень, Екатеринбург
9 января, 12:24
Я просто положу здесь это. Свап двух чисел:
int a, b;
a += (b - (b = a));
29 декабря 2018, 12:40
Можно решить использую 3 if конструкции и 3 доп. переменные. 1) Сравниваем(>=) 2 числа, результаты записываем в переменные max и min. 2) Сравниваем 3е значение с max; 2.1) Если max больше сравниваем 3е число с минимальным, если ок mid = c; иначе в mid перезаписываем min значение, а в min записываем 3е число. Если max меньше, то в mid перезаписываем max, а в max перезаписываем 3е число. И теперь выводим результат System.out.println(max + " " + mid + " " + min);
Евгений6 уровень
24 декабря 2018, 09:21
В обсуждении предыдущей задачи показано решение Math.max и Math.min для нескольких чисел. Самое сложное тут mid = a + b + c - (max + min). ))))
27 декабря 2018, 10:15
так не интерестно
Дмитрий8 уровень
19 декабря 2018, 16:40
Смысл решать задачу способами которые будут дальше по темам? Если задача на уровне ветвлений и циклов, соответственно думаю и надо решать данными способами. 4 if -else Приведу пример своего решения: if (((p >v) |(p==v)) && ((p>z)|(p==z)) && ((p>b)|(p==b))) { System.out.println(p); } и так далее для каждых введеных чисел... Удачи Нет, ошибся , все работало и так далее. Но небыло предусмотрено очень много возможных состояний Например когда 1 и 3 число равны а 2 больше 1 или меньше 1. В итоге у меня 18 if-else. Ахахазаза, мб как то умней можно ..
Александр9 уровень, Казань
21 декабря 2018, 14:28
Слишком сложно) Вот мой способ -
Александр9 уровень, Казань
21 декабря 2018, 14:33
В комментах нашел еще лучше:
Если c1 < c2 - меняем их местами
Если c2 < c3 - меняем их местами
Если c1 < c2 - меняем их местами
Дмитрий8 уровень
21 декабря 2018, 21:10
А вы рассмотрели случай если а==б или б==с или а==с?
Александр9 уровень, Казань
24 декабря 2018, 08:41
Подумайте, нужно ли нам такие случае рассматривать?) Мне кажется нет...
Александр Казаков7 уровень, Москва
12 января, 23:37
Рассмотрите случай, где все три числа к примеру являются 5, ваш алгоритм не поймет этого, хотя теоретически да и системно компьютер должен тоже сортировать эти значения
Александр9 уровень, Казань
15 января, 09:26
Зачем сортировать 3 equals элемента...
Sid205018 уровень
10 декабря 2018, 22:53
Кому нужно быстрое решение: загоните числа в массив, отсортируйте и выведите в обратном порядке.
Сергей С4 уровень, Минск
5 января, 22:06
ну тогда уже TreeMap c обратным выводом