進製轉換是計算機內部時時刻刻都在進行活動,本篇文章也是進製轉換的演算法介紹,不過不同的是我想利用ascll編碼實現2到61之間任意進製的相互轉換,更大進製的表示方法只不過是十六進製制表示方法的延伸:用字母a到z表示整數10到35,字母a到z表示整數36到61。這樣就可以表示2到61之間的任意進製啦,為方便理解ascll表放在**後面,可以自行檢視。
下面直接給上**:
1 #include2 #include3示例:using
namespace
std;
4void dectoother(int tmp, int
b);5
void othertodec(int a, char str, int
b);6
const
int maxsize = 10000;7
inta, b;
8char
str[maxsize];
9int
main()
1015
16void othertodec(int a, char str, int
b)17
32 dectoother(tmp, b); //
由十進位制轉換為目標進製33}
3435
void dectoother(int tmp, int
b)36 ;
39while (tmp != 0) //
十進位制轉換為目標進製演算法,結果放到陣列s中
4045 cout << a << "
進製數"
<< str << "的"
<< b << "
進製表示為:";
46for (; i > 0; i--) //
利用ascll編碼實現字母表示兩位整數,並倒序輸出轉換結果
4755 cout << '\n'
;56 }
附:ascll表
C 實現任意進製的相互轉換
進製轉換是計算機內部時時刻刻都在進行活動,本篇文章也是進製轉換的演算法介紹,不過不同的是我想利用ascll編碼實現2到61之間任意進製的相互轉換,更大進製的表示方法只不過是十六進製制表示方法的延伸 用字母a到z表示整數10到35,字母a到z表示整數36到61。這樣就可以表示2到61之間的任意進製啦,...
任意進製整數之間的相互轉換(C 實現)
任意進製整數之間的相互轉換經常出現在各大it公司的筆試面試中,這裡我對其中的演算法和實現 做個總結。演算法思想 例如,要求將x1進製的數r1轉化成為x2進製的數r2,首先應該將r1轉化為十進位制的數r decimal,然後再將十進位制數r decimal轉化為x2進製的數r2。1 下面是我用c 實現...
任意進製整數之間的相互轉換(C 實現)
任意進製整數之間的相互轉換經常出現在各大it公司的筆試面試中,這裡我對其中的演算法和實現 做個總結。演算法思想 例如,要求將x1進製的數r1轉化成為x2進製的數r2,首先應該將r1轉化為十進位制的數r decimal,然後再將十進位制數r decimal轉化為x2進製的數r2。1 下面是我用c 實現...