как исправить ошибку 'int' object is not iterable

def dven(n):
   c = 0
   b = 0
   n = str(n)
   for i in len(n[::-1]):
      b += int(n[i]) * (12**c)
      c += 1
   return b

print(dven(144))

Это код для перевода из 10 системы счисления в 12. Почему выводит ошибку, хотя на 4 строке есть перевод в строку


Ответы (1 шт):

Автор решения: MBo

В учебных целях подойдёт что-нибудь такое:

def dven(n):
    digits = '0123456789AB'
    result = ''
    while True:
        result = digits[n % 12] + result
        n //= 12
        if n == 0:
            break
    return result

print(dven(7354))

>>> 430A
→ Ссылка