用遞歸方式實現十進制轉十六進制

用遞歸方式實現十進制轉十六進制:

 

  1. #include <iostream>
  2. #include <string>
  3. using namespace std;
  4. string to_16(int num);
  5. char HexConvert(int n);
  6. int main(void)
  7. {
  8.     int num = 0;
  9.     cout<<"請輸入要進行轉化的數: ";
  10.     cin>>num;
  11.     cout<<to_16(num)<<endl;
  12.     
  13.     return 0;
  14. }
  15. string to_16(int num)
  16. {
  17.     if( num < 16 && num >= 0 )
  18.     {
  19.         return string("0x") + HexConvert(num);
  20.     }
  21.     
  22.     return  to_16(num/16) + HexConvert(num%16);
  23. }
  24. char HexConvert(int n)
  25. {
  26.     if(n<=9 && n>=0)
  27.     {
  28.         return n+'0';
  29.     }
  30.     else if(n>=10 && n<=15)
  31.     {
  32.         return n-10+'A';
  33.     }
  34.     else
  35.     {
  36.         return '0';
  37.     }
  38. }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章