Математика·Прочее

Сравнение 3 чисел: min, max и порядок

Сравнение 3 чисел: алгоритмы нахождения минимума, максимума и сортировки по возрастанию/убыванию. Примеры с дробными и отрицательными значениями.

Введите числа для сравнения
Настройки
Числа считаются равными, если разница между ними ≤ ε. Для целых чисел ставьте 0.
[type='submit']

Быстрый ответ

Сравнить три числа A, B, C — значит найти минимум, максимум и расположить их по возрастанию или убыванию (с учётом возможных равенств).

  • Минимум: min3 = min(min(A, B), C)
  • Максимум: max3 = max(max(A, B), C)
  • Медиана (среднее по порядку): med3 = A + B + C − min3 − max3
  • Порядок: по возрастанию [min3, med3, max3], по убыванию [max3, med3, min3]

Цепочку знаков записывайте как min3 ≤ med3 ≤ max3; при всех разных значениях — строго <.

Алгоритм сравнения трёх чисел

Простой и надёжный способ:

  1. Возьмите min = A и max = A.
  2. Сравните с B:
  • если B < min, то min = B;
  • если B > max, то max = B.
  1. Сравните с C:
  • если C < min, то min = C;
  • если C > max, то max = C.
  1. Медиана: med = A + B + C − min − max.

Итог даёт минимум, максимум и среднее по порядку без полной сортировки. Для полной сортировки достаточно вывести [min, med, max].

Альтернативная короткая сортировка обменами:

  • если A > B, поменяйте их местами;
  • если B > C, поменяйте их местами;
  • если A > B, снова поменяйте их местами. Теперь A ≤ B ≤ C.

Дробные, отрицательные и “почти равные” значения

  • Отрицательные числа сравниваются обычно: −7 < −2 < 0 < 0.5.
  • Для вещественных чисел используйте допуск ε: числа считаются равными, если |x − y| ≤ ε. Это важно при значениях вроде 0.1 + 0.2 и 0.3.
  • Цепочку удобнее писать с ≤/≥, если есть “почти равные” пары.

Выбирайте ε разумно под задачу (например, 1e−9 для математических расчётов, 1e−6 для инженерных при миллиметровых допусках, и т. п.).

Примеры

  • Пример 1: A = 7, B = −2, C = 7
    min3 = −2, max3 = 7, med3 = 7. Порядок: −2 < 7 = 7.

  • Пример 2: A = −12.5, B = −11.3, C = −12.5
    min3 = −12.5, max3 = −11.3, med3 = −12.5. Порядок: −12.5 = −12.5 < −11.3.

  • Пример 3 (вещественные): A = 0.1 + 0.2, B = 0.3, C = 0.3000000001, ε = 1e−9
    |A − B| ≤ ε и |B − C| ≤ ε, значит A ≈ B ≈ C, все значения считаем равными.

Частые ошибки и как их избежать

  • Сравнение как текста: “12” > “9” верно, но “100” < “9” — ложно; всегда сравнивайте как числа.
  • Игнорирование равенств: записывайте ≤/≥, иначе цепочка может стать неверной.
  • Плавающая точка без допуска: мелкие погрешности ломают строгие сравнения; применяйте ε.
  • Переполнение суммы при медиане: при экстремально больших |A|, |B|, |C| лучше находить медиану через сравнения, а не через A + B + C − min − max.
  • Смешение разделителей десятичной части: определите формат ввода (точка или запятая) и используйте его последовательно.

Как пользоваться нашим калькулятором

  • Введите три значения: A, B, C (целые, дробные, отрицательные допускаются).
  • Выберите режим: по возрастанию или по убыванию.
  • При необходимости задайте допуск ε для вещественных сравнений.
  • Нажмите «Рассчитать» — получите минимум, медиану, максимум, отсортированный список и наглядную цепочку знаков.
  • Дополнительно выводится информация о равенствах и “почти равенствах” по заданному ε.

Минимум сравнений: теория в одном абзаце

  • Найти одновременно min и max для трёх чисел можно за 3 сравнения в худшем случае.
  • Полностью отсортировать три числа в худшем случае тоже достаточно 3 сравнений (алгоритм с обменами выше).
  • Это нижние границы для гарантированного результата: меньше сравнений в худшем случае не обойтись.

Часто задаваемые вопросы

Как быстро сравнить три числа без калькулятора?
Сначала определите минимум и максимум: min3 = min(min(A, B), C), max3 = max(max(A, B), C). Среднее по порядку (медиана) равно A + B + C − min3 − max3. Итоговый порядок: по возрастанию — min3, медиана, max3; по убыванию — max3, медиана, min3.
Чем отличается “медиана из трёх” от среднего арифметического?
Медиана — это среднее по порядку число из трёх: оно стоит между минимумом и максимумом. Среднее арифметическое — сумма, делённая на 3. Эти величины совпадают не всегда; медиана устойчивее к выбросам, поэтому удобна для быстрого “устойчивого” сравнения значений.
Как корректно сравнивать три числа с плавающей точкой?
Из‑за округлений используйте допуск ε. Считайте числа равными, если |x − y| ≤ ε, где ε выбирают по задаче (например, 1e−9 для типичных расчётов с двойной точностью). Тогда сравнения делайте с учётом ε, а цепочки пишите через ≤/≥ при почти равных значениях.
Что делать, если среди трёх чисел есть равные?
Разрешите равенство в записи: A ≤ B ≤ C или A = B < C и т. п. Минимум и максимум остаются определены, а медиана совпадает с равным значением. При сортировке просто сохраняйте обе одинаковые позиции: например, 4, 4, 9 — уже отсортировано.
Как отсортировать три числа в Excel или Google Sheets?
Если числа в A1:C1, используйте: минимум = MIN(A1:C1), максимум = MAX(A1:C1), медиана = MEDIAN(A1:C1). Порядок по возрастанию: MIN, MEDIAN, MAX. Или примените функцию SORT к диапазону 1×3 с параметром по возрастанию/убыванию.
Как избежать ошибок при сравнении очень больших чисел?
Не сравнивайте как текст: строка "100" меньше "9" лексикографически. Преобразуйте к числовому типу с достаточной разрядностью или используйте “большие числа” (BigInt/decimal). Для десятичных дробей критична точность: при необходимости переходите на десятичные библиотеки с фиксированным масштабом.