Распределить числа в порядке возрастания - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Значения переменных X, Y, Z поменять местами так, чтобы они оказались упорядоченными по возрастанию.

Решение задачи: «Распределить числа в порядке возрастания»

textual
Листинг программы
#include <stdio.h>
 
int main() {
    int x, y, z;
    int min;
 
    scanf("%d %d %d", &x, &y, &z);
 
    if ( x > y ) {
        min = y;
        y = x;
        x = min;
    }
    if ( y > z ) {
        min = z;
        z = y;
        y = min;
    }
    if ( x > y ) {
        min = y;
        y = x;
        x = min;
    }
 
    printf("%d %d %d\n", x, y, z);
 
    return 0;
}

Объяснение кода листинга программы

В этом коде происходит сортировка чисел по возрастанию с использованием алгоритма сортировки выбором.

  1. Сначала объявляются три переменные типа int: x, y, z.
  2. Затем объявляется переменная min типа int.
  3. Далее, с помощью функции scanf, в переменные x, y, z считываются три числа, отсортированные в произвольном порядке.
  4. Код проверяет, является ли первое число (x) больше второго (y), и если это так, то меняет их местами, присваивая минимальное значение переменной min.
  5. Затем код проверяет, является ли теперь второе число (y) больше третьего (z), и если это так, то меняет их местами, присваивая минимальное значение переменной min.
  6. Последняя проверка: код проверяет, является ли теперь первое число (x) больше второго (y), и если это так, то меняет их местами, присваивая минимальное значение переменной min.
  7. Наконец, с помощью функции printf, на экран выводятся отсортированные числа: x, y, z.
  8. Код завершается, возвращая 0.

Оцени полезность:

5   голосов , оценка 3.2 из 5
Похожие ответы