對於乙個p進製的數字,若要轉化為q進製,則需要兩部:
第一步:
將p進製的數字轉化為10進製
y=a1*p(n-1)+a2*p(n-2)+....+an-1p+an
如何實現?
int x,p;
int y=0,pro=1;//p表示進製
while(x!=0)
//將 十進位制轉換為q進製,除基取餘法;
/*例如11轉換為2進製
首先11%2=5 餘1
5%2=2 餘1
2%2=1 餘0
1%2=0 餘1
所以十一的二進位制為 1011
*/ int z[40],num=0;
dowhile(y!=0);//當商不為0時迴圈
例題 pat1022
時間限制
100 ms
記憶體限制
65536 kb
**長度限制
8000 b
判題程式
standard
作者 chen, yue
輸入兩個非負10進製整數a和b(<=230-1),輸出a+b的d (1 < d <= 10)進製數。
輸入格式:
輸入在一行中依次給出3個整數a、b和d。
輸出格式:
輸出a+b的d進製數。
輸入樣例:
123 456 8輸出樣例:
1103
演算法筆記習題 問題 C 進製轉換
普通10進製轉換為二進位制的方法是除數取餘法。0位數字的十進位制數,查閱以後發現long long int型的範圍大約是10 18,不足以表示10 30。所以這題的思路是用陣列儲存這個數值,然後用陣列的方式模擬除數取餘法 陣列最後乙個數,就是10進製數的尾數,尾數對2取餘的值 陣列表示的這個10進製...
演算法筆記(六)進製轉換
兩種情況 1 將p進製 x 轉換為q進製 資料 要分兩步走 1 將p進製數在轉化為10進製數y 十進位制數形式為 y d1d2d3d4d5d6d7.dn 同可以寫為 y d1 10 n 1 d2 10 n 2 dn 1 10 dn p進製數x為a1a2a3a4a5a6.an,類似於十進位制轉化,同可...
進製轉換 演算法筆記
進製轉換步驟 將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...