急!怎样才能把十进制转为36进制???在线等待.. (100分)

  • 主题发起人 主题发起人 gbyahoo
  • 开始时间 开始时间
G

gbyahoo

Unregistered / Unconfirmed
GUEST, unregistred user!
怎样才能把十进制转为36进制??
如149999十进制-》37QN三十六进制
{0-9,A-Z}
 
没见过这样的函数,只好自己写了.
function Convert(numSrc,numCarry:Integer):string;
function GetNumChar(numSrc,numCarry:Integer):Char;
begin
if(numSrc<10)then
Result:=Chr(numSrc+Ord('0'))
else
Result:=Chr(numSrc-10+Ord('A'));
end;
var numResidue:Integer;
begin
if numSrc<10 then
begin
Result:=IntToStr(numSrc);
end
else
begin
Result:='';
numResidue:=numSrc mod numCarry;
while numResidue>0 do
begin
Result:=GetNumChar(numResidue,numCarry)+Result;
numSrc:=numSrc div numCarry;
numResidue:=numSrc mod numCarry;
end;
end;
end;
begin
Edit1.Text:=Convert(149999,36);//返回'37QN'
end;
 
你总该知道算法把?不停的除以36,然后把余数倒过来排列就是了
 
接受答案了.
 
后退
顶部