почему программа не сообщает об ошибке, когда пользователь вводит ноль, хотя пользователя просят ввести натуральные числа?

stas.rusin

Новичок
Пользователь
Авг 9, 2020
2
0
1
Добрый день,
подскажите, пожалуйста, почему программа не сообщает об ошибке, когда пользователь вводит ноль, хотя пользователя просят ввести натуральные числа?
ОС: Win10, Python3

Python:
def main():
    while True:
        try:
            a,b = map(int, input("Ведите через пробел целые числа, для которых ищем НОД").split())
        except:
            print("Вы ввели нецелые числа")
            continue
        break
       
    print(MaxComDiv(a,b))
if __name__ == "__main__":
    main()
 

lynulx

Модератор
Команда форума
Модератор
Авг 9, 2020
139
19
18
целые, а не натуральные. теперь думай, в чем проблема
 

weamagic

Пользователь
Пользователь
Июл 11, 2020
141
13
18
Добрый день,
подскажите, пожалуйста, почему программа не сообщает об ошибке, когда пользователь вводит ноль, хотя пользователя просят ввести натуральные числа?
ОС: Win10, Python3

Python:
def main():
    while True:
        try:
            a,b = map(int, input("Ведите через пробел целые числа, для которых ищем НОД").split())
        except:
            print("Вы ввели нецелые числа")
            continue
        break
      
    print(MaxComDiv(a,b))
if __name__ == "__main__":
    main()

0 - натуральное число. Его исключение надо прописывать отдельно.
 

stas.rusin

Новичок
Пользователь
Авг 9, 2020
2
0
1
да, понял , спасибо!
 

Форум IT Специалистов