Дано натуральное число n. Переставить его цифры так, чтобы образовалось максимальное число, записанное теми же цифрами.
Как работает этот цикл? Почему цифры сдвигаются влево?

Приложения:

Ответы

Ответ дал: Аноним
0

Здесь показан алгоритм сортировки пузырьком

Видимо, repeat until стоит как проверка вводимого числа на натуральность

Число n далее преобразуются в строку так как строка позволяет сравнивать и обменивать местами цифры.

Далее идет реализация самой сортировки и вывод

Ответ дал: Аноним
0
Ну, цифры сдвигаются влево из-за особенности пузырьковой сортировки - подробнее о ней можно почитать здесь: https://neerc.ifmo.ru/wiki/index.php?title=%D0%A1%D0%BE%D1%80%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%BA%D0%B0_%D0%BF%D1%83%D0%B7%D1%8B%D1%80%D1%8C%D0%BA%D0%BE%D0%BC
Ответ дал: DonPedro80
0

С виду это на Паскале программа, но тогда в ней цикл repeat until никак не работает, поскольку записан он неверно. Формат записи другой. В начале цикла пишется repeat, а until n>0 пишется в конце. Похоже, что этот заголовок кто-то списал с Бейсика.


По задумке тут число преобразуется в строку, а затем цифры в ней упорядочиваются по убыванию. Для этого используется обменная сортировка в ее разновидности, называемой также "пузырьковая сортировка". Конечно, классическая пузырьковая сортировка реализуется немного иначе, там внутренний цикл идет от конца к началу, а тут от начала к концу, что характерно для разновидности, называемой "метод камня". При сравнении пары значений происходит их обмен местами в случае, когда левый элемент меньше правого. Поэтому левые элементы с более меньшим значением переходят правее, а элементы с большим знаением - левее. Создается впечатление, что бОльшие цифры сдвигаются влево.

Ответ дал: Ejik17
0
Энивей, цикл на проверку натуральности не может не работать.
Ответ дал: DonPedro80
0
Причем тут цикл на проверку натуральности? Пишешь всякую ерунду.
Ответ дал: Ejik17
0
О господи, ты вообще подключаешь мозги, когда кому - то пишешь?
Вас заинтересует