← Все вопросы
Как найти наибольшую и наименьшую цифру в числе?
4
Дано число, например 38172. Надо найти самую большую цифру (8) и самую маленькую (1). Как это сделать в коде?
1 ответ
9
✓ Принятый ответ — помог автору
Проще всего перебрать цифры через строку и взять max/min:
n = 38172
digits = [int(c) for c in str(abs(n))]
print(max(digits)) # 8
print(min(digits)) # 1
Если нужен чисто математический вариант (без строки), отрезаешь цифры через % 10 и // 10:
n = abs(38172)
biggest = 0
smallest = 9
while n > 0:
d = n % 10
biggest = max(biggest, d)
smallest = min(smallest, d)
n //= 10
print(biggest, smallest) # 8 1
Ваш ответ
, чтобы ответить на вопрос.