Найдите наименьшее значение х, при котором программа выведет сначала 12, а потом 7:
x=int(input())
a=0
b=0
while x>0:
c=x%10
a+=c
if c>b:
b=c
x//=10
print(a)
print(b)
То есть в конце программы значение переменной а = 12, переменной b = 7.
Для лучшего понимая, разберемся с таким кодом:
x=int(input())
while x>0:
print(x%10)
x//=10
при х =256:
напечатается x%10 = 256 %10 = 6, тепепь х станет равным = 256//10=25, напечается 25 %10=5, х станет равным=25//10=2….. — то есть переменная с в изначальном коде соответствует выводу x%10, который давал нам результаты: 6 5 2 — цифры числа в обратном порядке.
Если посмотреть внимательнее, то переменная а у нас изменяется только в строчке a+=c — можно сказать, что а = сумма всех цифр нашего числа х
Тогда что записывается в переменную b?
Изначально b=0, но каждый раз, когда выполняется условие, что очередная цифра числа больше b — значение b изменяется.
🔴 Получили:
а — сумма всех цифр числа x = 12.
b — наибольшая цифра числа x = 7.
По заданию нас просят найти наименьшее х, одну цифру мы уже знаем — 7.
Представим 12 в виде сумм некоторых цифр с минимальным кол-во разрядов: 57 или 75.
57<75 — ответ 57!
Авторизуйтесь, чтобы оставить комментарий.