本文最后更新于 187 天前,其中的信息可能已经有所发展或是发生改变。
10进制->k进制
输入数据
100 8
输出数据
144
首先是10进制转换为k进制,用数组a[]表示
#include<iostream>
#include<cstring>
#include<algorithm>
using namespace std;
int main(){
//进制转换,10进制转换为k进制;
int x,k;cin>>x>>k;
int z[10010],cnt=0;
while(x){
z[++cnt] = x % k, x /= k;
}
reverse(z+1,z+cnt+1);
for(int i = 1;i<cnt+1;i++) cout<<z[i];
return 0;
}
k进制->10进制
输入数据
144 8
输出数据
100
#include<iostream>
#include<cstring>
#include<algorithm>
using namespace std;
int main(){
int x,k;cin>>x>>k;
int a[10010],cnt=0;
while(x) a[++cnt] = x%10,x/=10;
reverse(a+1,a+cnt+1);
int z = 0;
for(int i = 1;i<=cnt;i++){
z = z*k+a[i];
}
cout<<z<<endl;
return 0;
}