@Azamgl

Непонятная ошибка в консоли?

По задаче нужно найти кол-во четных и положительных цифр в числе, мой код:
#Написать программу, которая считает количество чётных и положительных цифр введённого числа
n = int(input('Введите число: '))  
count1 = 0
count2 = 0
while n!=0:
        n1=n%10
        count2+=1
        n//=10
        if n1%2==0:
                count1+=1
if n<=0:
        count2-=1
print(count1, count2)

В общем я подумал, что отрицательная цифра в числе может быть только одна, в начале.
И поэтому я считал, сколько цифр в числе и если число отрицательное отнимал однерку (ну и нуль я не считал за положительную цифру). Но проблема в том, что когда я в консоли ввожу отрицательное число (т.е. просто перед числом ставлю знак минус -), он ничего не выдает, ни информацию о том, что в коде допущена ошибка, ни просит ввести число. Я могу просто нажимать энтер или запустить новую программу. Кто знает почему так происходит?
  • Вопрос задан
  • 63 просмотра
Пригласить эксперта
Ответы на вопрос 1
@galaxy
Кто знает почему так происходит?

Код зацикливается, т.к. (-1)//10 = -1 (n с какого-то момента всегда равно -1)
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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