输入两个非负 10 进制整数 A 和 B (≤2?30??−1),输出 A+B 的 D (1<D≤10)进制数。
输入在一行中依次给出 3 个整数 A、B 和 D。
输出 A+B 的 D 进制数。
123 456 8
1103
十进制数a转成b进制数a/b
怎么转换呀。
就三步。
1.将a%b保存到数组
2.a/b
3.当a==0时结束,然后数组从后往前输出
两个测试点的事情:
考虑 和为0 的情况,不然第三个测试点不过
数组开大点,否则第二个测试点不过
代码如下:
1 #include<iostream> 2 #include<string> 3 using namespace std; 4 int main() 5 { 6 long long a,b,c; 7 int d,i=0; 8 int e[33]; 9 cin>>a>>b>>d; 10 c=a+b; 11 if(c==0){ 12 cout<<"0"; 13 return 0; 14 } 15 while(c!=0){ 16 e[i++]=c%d; 17 c/=d; 18 } 19 for(int j=i-1;j>=0;j--) 20 cout<<e[j]; 21 return 0; 22 }
原文:https://www.cnblogs.com/xx123/p/10348992.html