Данная программа вычисляет сумму цифр числа. Чтобы получить наименьшее четырёхзначное число, сумма цифр которого равна 23, нам нужно найти такое число вида \(1xyz\), где \(x+y+z = 23 - 1 = 22\).
Для того чтобы число было наименьшим, старшие разряды должны быть как можно меньше. Так как сумма цифр \(x, y, z\) должна быть 22, а максимальное значение одной цифры - 9, то:
Среди этих чисел наименьшее — 1499.
Проверим:
n = 1499
s = 0
while n > 0:
p = n % 10
s += p
n = n // 10
print(s)Шаг 1: n=1499, p=9, s=9, n=149 Шаг 2: n=149, p=9, s=18, n=14 Шаг 3: n=14, p=4, s=22, n=1 Шаг 4: n=1, p=1, s=23, n=0 Результат: 23
Ответ: 1499