任意进制转任意进制 C++
代码如下(C++):
#include <bits/stdc++.h>
using namespace std;
int main()
{
int D = 0; string a = "";
cout << "Please input jinzhi: ";
cin >> D;
cout << "Please input the number of jingzhi: ";
cin >> a;
int sum = 0, decimal = 0;
for(int i = 0; i <= a.length()-1; i++)
{
sum = pow(D,a.length()-i-1);
decimal += (a[i]-'0') * sum;
}
//cout << decimal << endl;
cout << "Please input the jinzhi you want to transform: ";
int H;
cin >> H;
string hex = "";
while(decimal != 0)
{
int hexvalue = decimal % H;
char hexchar = (hexvalue <= 9 && hexvalue >= 0) ?
static_cast<char>(hexvalue + '0'):
static_cast<char>(hexvalue - 10 + 'A');
hex = hexchar + hex;
//cout << hex << endl;
decimal = decimal / H;
}
cout << "The hex number is " << hex << endl;
}