如何将10进制数转化成z进制****and将p进制数转化为10进制
//将10进制数转化成z进制
#include<iostream>
using namespace std;
int main()
{
int a[100] = {0};
int i = 0; // 可以用来保存转化成该进制之后有多少位;
int x, z; // 将10进制数x转化成z进制的数;
cin >> x >> z;
while (x != 0) {
a[i++] = x % z;
x = x / z;
}
if (i == 0)
// 值得一提的是当10进制数x是0时,如果不加这个可能上面直接跳出循环 后就没有后话了。
a[0] = 0;
for (int j = 0; j < i / 2; j++) {
int t = a[j];
a[j] = a[i - j - 1];
a[i - j - 1] = t;
}
for (int j = 0; j < i; j++) {
cout << a[j];
}
cout << endl;
return 0;
}
将10进制数转化成z进制
#include<iostream>
using namespace std;
int main()
{
int x, p; // x是一个p进制的数;
cin >> x >> p;
int sum = 0, produck = 1; // sum为x转化为10进制后的数;
while (x != 0) {
int k = (x % 10) * produck;
sum += k;
x = x / 10;
produck *= p;
}
cout << sum <<endl;
return 0;
}