十進位制小數轉換為n進製小數的方法為
乘n取整法
所謂乘n取整法是將十進位制的小數乘以n,得到的整數部分作為小數點後第一位。剩餘的小數部分再乘以n,得到的整數部分作為小數點後第二位。直到剩餘小數部分為0,或達到一定精度為止。
如十進位制的0.54轉換為16進製制的過程為:
0.55*16=8.8 —8
由於不能被精確的轉換,我們可以只取前4位,為0.8ccc
一般的十進位制數轉換為n進製數
分別轉換整數和小數部分。
double m;
int n;
double temp =
0.0;
int res;
while
((cin >> m >> n)&&(
!(m ==
0&& n ==0)
))cout<}
十進位制小數轉為二進位制小數
整數和小數分別轉換.整數除以2,商繼續除以2,得到0為止,將餘數逆序排列.22 2 11 餘 0 11 2 5 餘 1 5 2 2 餘 1 2 2 1 餘 0 1 2 0 餘 1 所以22的二進位制是10110 小數乘以2,取整,小數部分繼續乘以2,取整,得到小數部分0為止,將整數順序排列.0.81...
十進位制小數轉為二進位制
十進位制數轉換為二進位制的大家都清楚了,那麼帶小數的十進位制如何轉換為二進位制?整數部分當然和十進位制整數轉換方式一樣,也就是說小數部分如何轉化為二進位制?方法 乘2取整法,即將小數部分乘以2,然後取整數部分,剩下的小數部分繼續乘以2,然後取整數部分,剩下的小數部分又乘以2,一直取到小數部分為零為止...
十進位制小數轉N進製(python)
題目描述 編寫程式實現將任意10進製正小數m轉換成n進製的正小數,小數點後保留10位小數。輸入輸入包含兩個數m,n,用空格隔開。輸入包含多組測試,當m,n都為0時輸入結束。limits 0.0000009輸出 輸出10進製正小數m的n進製小數。結果保留10位小數。樣例輸入樣例 1 0.795 3 0...