Где ошибка? В чём я не прав? Not all arguments converted during string formatting
Ответы (1 шт):
Автор решения: 4500zenja
→ Ссылка
Даже после выполнения команды i = bin(i)[2:] переменная остаётся строкой, а не числом, поэтому операция взятия остатка для строки не существует.
Полагаю, Вы забыли привести результат к типу int:
i = int(bin(i)[2:])
UPD: если смотреть на другую часть кода, то тогда можно привести к int только i в условии: if int(i) % 2 == 0. В конце концов, даже если i и стала двоичным числом, операция взятия остатка не изменяется: для нечётных число будет ...1, для чётных — ...0.
