marți, 2 octombrie 2012

L14. Conversia unui numar din baza 10 in baza B

Un numar NB scris in baza B are "cifre" cu valori intre 0 si B-1.

Pentru a obtine reprezentarea numarului N10 in baza B, trebuie sa realizam un sir de impartiri repetate la B.

Fie N10=2490 si B=8

2490 impartit la 8 produce catul 311 si restul 2.

311 impartit la 8 produce catul 38 si restul 7

38 impartit la 8 produce catul 4 si restul 6

4 impartit la 8 produce catul 0 si restul 4

Luam resturile in ordine inversa si obtinem NB=4672.

Algoritmul de mai jos urmareste exact acest tip de calcul. Se observa ca pentru constructia lui NB trebuie sa lipim fiecare rest in fata numarului NB.

citeste N10;

NB=0;

p10=1;

cat timp(N10!=0)

{

NB=NB+P10*(N10%B);

P10=P10*10;

N=N/B;

}

scrie NB.

Niciun comentariu:

Trimiteți un comentariu