Проанализируем код и условия задачи.
c. По условию, нужно посчитать количество чисел, удовлетворяющих условиям. Счетчик должен начинаться с 0.s / 4 == 0. Это условие проверяет, делится ли сумма цифр на 4. Однако, оно неверно записано. Правильная запись: s % 4 == 0.x % 8 == 0. По условию, число НЕ ДОЛЖНО делиться на 8. Следовательно, здесь должно быть x % 8 != 0.c = c + 2. По условию, каждое найденное число увеличивает счетчик на 1.while t > 0, переменная s перезаписывается на каждой итерации, а не суммируется. Правильно: s += t % 10.n = int(input())
c = 0
for x in range(1, n + 1):
s = 0
t = x
while t > 0:
s += t % 10
t = t // 10
if s > 15 and s % 4 == 0 and x % 6 == 0 and x % 8 != 0:
c = c + 1
print(c)
Краткий ответ (при N=50000):
Ответ: 3125