Предмет: Информатика, автор: Jang0Balls

Прокомментируйте работу цикла в c++ (с while ), а то я валенок не могу понять как он работает. Он выводит наименьшую цифру в заданном числе.

Приложения:

Ответы

Автор ответа: NqVixer
1

Ответ:

Объяснение:

Суть алгоритма:

Объявляем и инициализируем переменную m, которая будет использоваться для хранения наименьшей цифры (по умолчанию она равна 9, т.е. наибольшей из возможных цифр). Также создаём переменную n, в которую пользователь будет вводить число и переменную k, которая будет использоваться для сохранения значения последней цифры.

Псевдокод:

пока (n != 0) - иными словами пока в числе не закончились цифры (про это в конце)

k = n % 10 - поделив число с остатком на 10 мы можем получить его последнюю цифру

если (последняя цифра числа меньше минимальной) --> присвоить k значение этой цифры - тут пригодилось инициализирование переменной m девяткой, т.к. если цифра меньше 9 - она станет минимальной, если она равна 9 - минимальная цифра так и останется 9

n = n/10 - "отсекаем" у числа последнюю цифру, которую только что проверяли (поделив, например, 145 / 10 получится 14.5, но благодаря тому, что тип данных int, он просто отсечёт все цифры после точки и оставит только 14)

И этот цикл будет продолжаться до того момента, пока в числе будут оставаться цифры (например исходя из прошлого примера с числом 14, далее он проверит цифру 4 и снова отсечёт последнюю цифру, останется 1, он проверит 1 и снова поделит на 10, после этого останется 0.1, а как мы помним значение после точки отсекается, остаётся 0 и на следующей итерации цикл прекращается)

Если ещё останутся вопросы, спрашивай в комментариях


Jang0Balls: Спасибо, теперь разобрался )
Похожие вопросы
Предмет: История, автор: ксения14610
Предмет: Русский язык, автор: aaaaaagfggfhwtc