@ilko134
Будущий Disigner

Почему не правильно работает?

a = int(input())
n = a % 10
a2 = a // 10
while(a2 != 0):
    z = a2 % 10
    if(n > z):
        ld = n
    else:
        ld = z
    a2 = a2 // 10
    print(ld)


Нужно выявить самую большую цифру числа. Не могли бы сказать,что здесь не так))?
  • Вопрос задан
  • 157 просмотров
Решения вопроса 1
AnnTHony
@AnnTHony
Интроверт
Переменную ld желательно объявлять перед циклом.
У print неправильный отступ.
Слишком много ненужных переменных.
Сам алгоритм верный, но я бы переписал так:

input_value = int(input())
max_number = 0
while (input_value > 0):
    current_number = input_value % 10
    if (max_number < current_number):
        max_number = current_number
    input_value //= 10
print(max_number)
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@lega
>>> max(list('1736'))
'7'
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы