Решение: Разберёмся с алгоритмом.
Каждый повтор цикла значение переменной n делится на 10. Разберем на примере трёхзначного числа ABC, где A, B и C — разряды числа:
1-й повтор цикла. n := ABC div 10 = AB
2-й повтор цикла. n := AB div 10 = A
3-й повтор цикла. n := A div 10 = 0.
Кроме того, в каждом повторе проверяется значение n mod 10, то есть младший разряд введённого числа. Для числа вида ABC:
в первом повторе цикла ABC mod 10 = C;
во втором повторе цикла AB mod 10 = B;
в третьем повторе цикла A mod 10 = A.
Таким образом, полное выполнение цикла проверяет каждый разряд числа.
В цикле два условия:
if n mod 10 > a then a := n mod 10; — находит наибольший разряд числа;
if n mod 10 < b then b := n mod 10; — находит наименьший разряд числа.
То есть значение переменной a — это наибольший разряд числа, а значение переменной b — наименьший.
Получается, нам нужно подобрать наименьшее трёхзначное число, в котором минимальный разряд равен 1, а максимальный — 5.
Если мы ищем наименьшее число, то старший разряд должен быть минимальным:
1xx
А младший разряд — максимальным:
1x5
Второй разряд, для получения наименьшего числа, должен быть как можно меньше. Так как минимальный разряд в числе — 1, то n=115.
Ответ: 115