Почему это не удается? Найдите числа от 100 до 400 (оба включены), где каждое di git числа является четным числом. - PullRequest
0 голосов
/ 04 августа 2020

Почему моя программа не запускается? Я новичок.

Я мог бы сделать это с range, но я хотел, чтобы это было просто.

a=100
b=400
while a!=b:
    j=0
    d=a
    while d!=0:
        k=d%10
        d=d/10
        if(k%2==0):
            continue
        else:
            j=j+1
            break
    a=a+1
    if j==0:
        print(a-1,",")
    else:
        continue

1 Ответ

2 голосов
/ 04 августа 2020

Проблема в вашей программе в этой строке.

d=d/10

Вы должны использовать здесь целочисленное деление

d = d // 10

Улучшенная версия вашего решения

a, b = 100, 400
while a != b:
    d = a
    while d != 0:
        d, k = divmod(d, 10)
        if k % 2 != 0:
            break
    else:
        print(a, end=', ')
    a += 2
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...