Untitled

 avatar
unknown
python
a year ago
1.2 kB
2
Indexable
dwujkowy = 1011

def z_dwuj_na_dziesie(dwujkowy):
    dl = len(dwujkowy)
    suma = 0
    for i in range(dl):
        suma = suma + int(dwujkowy[dl - i - 1]) * 2**i
    print(suma)




def z_dziesie_na_dwuj(dziesietne):
    potengi_lista = []
    dwujkowy = []

    moc_potengi = 1
    wynik_potegi = 2


    potengi_lista.append(1)
    while wynik_potegi < dziesietne:
        wynik_potegi = 2**moc_potengi
        moc_potengi = moc_potengi+1
        potengi_lista.append(wynik_potegi)



    dl = len(potengi_lista)
    print(dl)
    print(' ')


    for i in range(dl-1, -1, -1):
        print('potengi: ',potengi_lista[i])
        print('suma: ',dziesietne)

        if dziesietne < potengi_lista[i]:
            if i != dl-1:
                dwujkowy.append(0)
                print(0)

        elif dziesietne >= potengi_lista[i]:
            dziesietne = dziesietne - potengi_lista[i]
            dwujkowy.append(1)
            print(1)
            print('suma po odjeciu: ', dziesietne)

        print('NEXT ')
        print('')


    print(' ')
    for i in range(len(dwujkowy)):
        print(dwujkowy[i])


dziesientne = 80492321

z_dziesie_na_dwuj(dziesientne)
Leave a Comment