Суть кода: при вводе числа пользователем, добавляется надпись "программист/программиста/программистов" в зависимости от числа (1 программист, 2 программиста, 5 программистов, 211 программистов, 624 программиста).
Проблема кода: на выводе некоторые if-ы не считаются. К примеру, 1 программист - выводит правильно. 2-4 программиста - выводит правильно. Но уже далее, от 5 до 10, должно быть программистов, но выводится всё равно с окончанием "а". Начиная от 11 и до 999 (до такого числа должна работать программа) окончание "ов". Кто может, найдите ошибку, пожалуйста. Действительно не пойму, что не так.
Текст кода:
a = int(input())
b = str(a)
if len(b) == 3:
c = a % 100
if c == 11 or 12 or 13 or 14 or 15 or 16 or 17 or 18 or 19:
print(a,"программистов")
else:
c = a % 10
if c == 1:
print(a,"программист")
elif c == 0 or 5 or 6 or 7 or 8 or 9:
print(a,"программистов")
elif c == 2 or 3 or 4:
print(a,"программиста")
elif len(b) == 2:
c = a % 10
if c == 1:
print(a,"программист")
elif c == 2 or 3 or 4:
print(a,"программиста")
elif c == 0 or 5 or 6 or 7 or 8 or 9:
print(a,"программистов")
elif len(b) == 1:
if a == 1:
print(a,"программист")
elif a == 2 or 3 or 4:
print(a,"программиста")
elif a == 0 or 5 or 6 or 7 or 8 or 9:
print(a,"программистов")

c in [11, 12, 13, 14, 15, 16, 17, 18, 19] пока тоже не учил, но возьму во внимание. спасибо за ответ