the_king
مدیرکل انجمن
کد زیر یک عدد را دریافت نموده و پس از پرسیدن مبنای آن، به مبنای دلخواه دیگری تبدیل کرده و نمایش می دهد :
کد:
program prg;
uses crt;
var
i,j,k,l,mA,mB:longint;
A,B,C:string;
begin
clrscr;
write (' N1 :');
readln(A);
write (' mabna N1 :');
readln(mA);
l:=length(A);
for i:=1 to l do
begin
case a[i] of
'0'..'9': begin
k:=ord(a[i])-ord('0');
j:=k+j*mA;
end;
'a'..'f': begin
k:=ord(a[i])-ord('a')+10;
j:=k+j*mA;
end;
end;
end;
write (' new mabna :');
readln(mB);
while (j>0) do
begin
k:=j mod mB;
case k of
0..9 : B:=chr(k+ord('0'))+B;
10..15 : B:=chr(k+ord('a')-10)+B;
end;
j:=j div mB;
end;
write (' N2 :',B);
readkey;
end.