﻿"""
convertir de base 10 a base P
se comienza el arreglo para que A pueda ser la formula y solo 
trasladarlo de un lugar a otro sin la necesidad de 
reescribir el arreglo 
"""


def convertirbase10_P(n, b):
    A = []
    while n >= b:
        A.append(n % b)
        n = int((n - (n % 3)) / b)

    A.append(n)
    return A


"""
Se cambia el 6 base 10 a base 3 con el arreglo 
anterior 
"""
n = 6
b = 3
A = convertirbase10_P(n, b)


"""
convertir de base P a base 10 se define una funcion R que 
cambia una base P a una base 10
"""


def convertirdebaseP_10(A, B):
    s = 0
    for i in range(len(A)):
        s = s + A[i] * B ** i
    return s


"""
Se va a transormar [3,1,1] que esta en base 4 a base 10
"""

A = [3, 1, 1]
B = 4

R = convertirdebaseP_10(A, B)

"""
con la funcion R y A se hara una conversion de base p 
a base 10 y viceversa respectivamente
"""
n = 60
b = 4
A = convertirbase10_P(n, b)
R = convertirdebaseP_10(A, b)
print(A)
print(R)
