Вывод максимального числа кратного 3-м [ Python 3 ]
0.0/5 оценка (0 голосов)

Написать программу, которая выводит на экран максимальную цифру числа, кратную 3

n = int(input())
max_digit = n % 10  # выделяет последнюю цифру 3207
                    # числа и назначает ее максимальной
while n != 0: # пока в числе не закончились цифры !!!!!!!!!!!!!!!!!!!!! (изменил '>' на '!=' )(1)
    digit = n % 10 # выделяет последнюю цифру
    if digit == 0 and max_digit % 3 != 0:
        max_digit = digit
        continue
    elif digit % 3 == 0: # если последняя цифра делится на 3 без остатка 
        if digit >= max_digit: # и если последняя цифра меньше (нужно больше)(2) максимальной
            max_digit = digit  # назначет цифру максимальной
    n = n // 10  # снова выделяет последнюю цифру (нужно убрать из числа последнюю цифру) (3)
if max_digit % 3 != 0: # если максимальная цифра равна нулю (если максимальная цифра не делится на 3 без остатка)
    print('NO') # вывести на петать НЕТ
else:
    print(max_digit) # иначе вывести на печать значение максимальной цифры

Нужно обратить внимание, что переменной num необходимо явно задавать тип int в обоих случаях. Иначе на неотрицательность будет проверяться строковая переменная. Будет выведено сообщение об ошибке.

num = int(input())