1022. D进制的A+B (20)
时间限制
100 ms
内存限制
65536 kB
代码长度限制
8000 B
判题程序
Standard
作者
CHEN, Yue
输入两个非负10进制整数A和B(<=230-1),输出A+B的D (1 < D <= 10)进制数。
输入格式:
输入在一行中依次给出3个整数A、B和D。
输出格式:
输出A+B的D进制数。
输入样例:123 456 8输出样例:
1103
思路分析:由两个非负10进制整数A和B(<=230-1)知,可以开一个不超35的数组,同时注意sum=0时,直接输出0
AC代码:
#include<iostream>
#include<algorithm>
#include<cstdio>
#include<string.h>
#include<stdio.h>
using namespace std;
int main()
{
int a,b,c;
scanf("%d%d%d",&a,&b,&c);
int sum=a+b;
if(sum==0)
{
printf("0\n");
return 0;
}
int d[35];
int i=0;
while(sum!=0)
{
d[i++]=sum%c;
sum=sum/c;
}
for(int k=i-1;k>=0;k--)
printf("%d",d[k]);
printf("\n");
return 0;
}
#include<algorithm>
#include<cstdio>
#include<string.h>
#include<stdio.h>
using namespace std;
int main()
{
int a,b,c;
scanf("%d%d%d",&a,&b,&c);
int sum=a+b;
if(sum==0)
{
printf("0\n");
return 0;
}
int d[35];
int i=0;
while(sum!=0)
{
d[i++]=sum%c;
sum=sum/c;
}
for(int k=i-1;k>=0;k--)
printf("%d",d[k]);
printf("\n");
return 0;
}