進製轉換是計算機內部時時刻刻都在進行活動,本篇文章也是進製轉換的演算法介紹,不過不同的是我想利用ascll編碼實現2到61之間任意進製的相互轉換,更大進製的表示方法只不過是十六進製制表示方法的延伸:用字母a到z表示整數10到35,字母a到z表示整數36到61。這樣就可以表示2到61之間的任意進製啦,為方便理解ascll表放在**後面,可以自行檢視。
下面直接給上**:
#include
#include
using
namespace std;
void
dectoother
(int tmp,
int b)
;void
othertodec
(int a,
char str,
int b)
;const
int maxsize =
10000
;int a, b;
char str[maxsize]
;int
main()
void
othertodec
(int a,
char str,
int b)
dectoother
(tmp, b)
;//由十進位制轉換為目標進製
}void
dectoother
(int tmp,
int b)
;while
(tmp !=0)
//十進位制轉換為目標進製演算法,結果放到陣列s中
cout << a <<
"進製數"
<< str <<
"的"<< b <<
"進製表示為:"
;for
(; i >
0; i--
)//利用ascll編碼實現字母表示兩位整數,並倒序輸出轉換結果
cout <<
'\n'
;}
示例:
附: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 實現...