全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1231
推到 Plurk!
推到 Facebook!

如何寫出由10進制整數變為2進制呢?

尚未結案
jl
一般會員


發表:17
回覆:34
積分:10
註冊:2004-02-28

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-04-08 00:17:34 IP:202.175.xxx.xxx 未訂閱
致各位delphi弟兄: 小弟寫了以下一段code,雖能實現10進制-->2進制,但較為麻煩,以下一段coding 該怎樣寫才簡單地執行同一結果呢? function Dec2Bin (D : integer) : String; //輸入10進制-->輸出0,1字符串 var D1 : String; begin D1 :=''; while Abs(D div 2 ) > 0 do begin D1 := IntToStr(D mod 2) D1; D := D div 2; end; Result :='1' D1; end; //輸入10進制-->輸出0,1字符串************* 請各位delphi弟兄多多指點 jl 平常心活著
------
平常心活著
qoo1234
版主


發表:256
回覆:1167
積分:659
註冊:2003-02-24

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-04-08 01:35:19 IP:218.163.xxx.xxx 未訂閱
function Dec2Bin(Dec:LongInt):string;
var
  B1:integer;
  Bin,BinDigit:string;
begin
    BinDigit:='01';
    Bin:='';
    repeat
        B1:=DEC mod 2;
        DEC:=DEC div 2;
        Bin:=concat(BinDigit[B1 1],Bin);
    until DEC<1;
    Dec2Bin:=Bin;
end; 
網海無涯,學無止境!
speedup
資深會員


發表:19
回覆:259
積分:280
註冊:2003-07-04

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-04-08 09:34:40 IP:61.224.xxx.xxx 未訂閱
function Dec2Bin(Dec:LongInt):string;
const
 convert :string='01';
begin
 result := '';
 repeat
  result := Convert[(dec and $1)   1] result;
  dec := dec shr 1;
 until dec =0;
end;
混心雜欲 棄修身~唉
------
唉~
shieh2700
高階會員


發表:0
回覆:127
積分:100
註冊:2002-06-13

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-04-09 04:06:07 IP:61.216.xxx.xxx 未訂閱
湊熱鬧~    
function DecToBin( D : integer ) : string;
const
  _cbl : string = '0000000100100011010001010110011110001001101010111100110111101111';
var
  i : integer;
  h : string;
begin
  h   := IntToHex( D, 0 );
  for i := 1 to Length( h ) do
    result := result   copy( _cbl, StrToInt( '$'   h[i] )*4 1, 4 );
end;
jl
一般會員


發表:17
回覆:34
積分:10
註冊:2004-02-28

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-04-10 08:16:39 IP:202.175.xxx.xxx 未訂閱
謝謝qoo1234, speedup 及shieh2700三位 問題已得到完滿的解答。 感謝各位 平常心活著
------
平常心活著
系統時間:2024-11-05 5:45:56
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!