Объяснение
Ваше состояние неверное. Позвольте мне объяснить, что означает ваше состояние на английском языке. Вы написали:
(( a % 5) == 0) || ((a % 10) == 0) || ((a % 4) == 0)
То есть a
делится на 5
или , делится на 10
или этоделится на 4
.
Есть две проблемы:
- Вы объединили их с или вместо и (
&&
) - Вы проверяете, делится ли оно на
4
, а не на , не , делится на 4
(!= 0
)
Решение
Правильное условие:
a % 5 == 0 && a % 10 == 0 && a % 4 != 0
Примечания
Скобка может быть удалена из-за приоритета оператора (см. официальный учебник ).
Обратите внимание, что a % 10 == 0
уже подразумевает a % 5 == 0
. Таким образом, для этих конкретных чисел вы можете упростить условие до:
a % 10 == 0 && a % 4 != 0