進製轉換演算法

2021-05-28 08:31:45 字數 485 閱讀 4794

寫乙個函式char * fun(int value, int radix).輸入為乙個整數和乙個代表進製的整數,如71,7。 71表示要轉化的數,7代表要轉化成7進製數。輸出乙個字串指標,字串為整數value轉化為radix進製後的數字序列。小於10進製數用0~9表示,10進製~35進製用a~z表示。例如71用35進製表示為21,71用36進製表示為1z。

char* fun(int value, int radix)

;char c;

if(radix > 36 || radix <= 1)

for(i = 0; i < 36; i++)

else

}i = 0;

while(value > 0)

for(j = 0; j < i / 2; j++)

return ss;

以上程式在vc6上編譯通過,關於使用者傳遞的不合法的進製數例如1或大於36的數,返回null不是好的處理方法,應該還有更好的方法。

進製轉換演算法

int num 745 需要轉換的數 string value num int temp 0 while value.length 0 system.out.println temp m 10演算法是比較簡單的,轉成字串之後,依次取出每個字元,乘以相對應的權重再求和即可。int num 485 需要...

進製轉換 演算法筆記

進製轉換步驟 將p進製轉換為q進製,需要分為兩步 int y 0,product 1 p進製x轉化為10進製的y while x 0 十進位制y轉化為q進製z int z 40 num 0 陣列z存放q的進製數y的每一位,num為位數 dowhile y 0 這樣陣列從高位z num 1 到低位nu...

十進位制和26進製轉換演算法

問題描述 在excel中,列的名稱是這樣乙個遞增序列 a b c z aa ab ac az ba bb bc bz ca zz aaa aab 我們需要將上述列名序列和以下自然數序列相互轉換 1 2 3 問題分析 經過分析,我們不難發現,這是乙個26進製和十進位制相互轉換的問題。序列a z依次對應...