分析:其實就是把十進位制數a+b的和轉換為d進製數
模擬十轉二的除基取餘法
思路:為了防止不必要的麻煩,a和b還是用long吧
除基取餘:將a+b的和除以d,取每次的餘數,直到商為0
不能直接輸出餘數,這樣是反的。放在乙個陣列裡倒著輸出
#include using namespace std;
int main()
for(int i = count-1; i >=0 ; i--)
cout << num[i];
}
反思:
每次寫while迴圈我都會把條件寫反,然後花一分鐘找錯誤…
以下為改進**:
思路更改:
a, b最大不超過2的30次方,a+b最大就不超過2的31次方,可以用int
除基取餘法,第一遍就需要得到商和餘數,採用do while迴圈
#include
intmain()
while(0
!= c)
;for
(int i = count-
1; i >=
0; i--
)printf
("%d"
, num[i]);
return0;
}
1022 D進製的A B
輸入兩個非負10進製整數a和b 230 1 輸出a b的d 1 d 10 進製數。輸入格式 輸入在一行中依次給出3個整數a b和d。輸出格式 輸出a b的d進製數。輸入樣例 123 456 8輸出樣例 1103 按照進製轉換的公式,得出的餘數要反過來輸出。所以要先把計算出的餘數儲存在陣列中,但是陣列...
1022 D進製的A B 20
輸入兩個非負10進製整數a和b 230 1 輸出a b的d 1 d 10 進製數。輸入格式 輸入在一行中依次給出3個整數a b和d。輸出格式 輸出a b的d進製數。輸入樣例 123 456 8輸出樣例 1103 這個題目,自己提交了三遍,一直沒有ac,到最後,發現,原來是自己再結果為零 的時候沒有判...
1022 D進製的A B 20
時間限制 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進製數。輸入樣...