В ответе показивает несколько ответов вместо одного , Подскажите пожалуйста почему оно видает 2 ответа?
n = int(input())
if n == 1 or (n % 20) - 1 == 0:
print(n, 'программист')
x = 2
while x < 5:`введите сюда код`
if n == x or (n % 20) - x == 0:
print(n, 'программиста')
x += 1
z = 11
a = 31
while z < 1000:
if n == a:
print(n, 'программист')
break
if (n % 20) - z == 0 and n != z + 100:
print(n, 'программист')
z += 100
z = 12
while 1000 > z:
if (n % 100) // 10 in (3, 5, 7, 9):
print(n, 'программиста')
break
if (n % 20) - z == 0:
print(n, 'программиста')
z += 100
else:
print(n, 'программистов')
Test input: 12 Test output: 12 программиста 12 программистов
Ответы (1 шт):
Автор решения: magistar
→ Ссылка
Вот здесь, в предпоследнем операторе, выполняется условие:
if (n % 20) - z == 0:
print(n, 'программиста')
Так как n % 20 будет 12, и 12 - 12 = 0. Поэтому и выводит лишнее.