描述
很多小学生在学习加法时,发现“进位”特别容易出错。
你的任务是计算两个正整数在相加时有多少次进位。你编制的程序应当可以连续处理多组数据,直到读到两个0(这是输入结束标记)。
输入
输入文件名为carry.in。
输入文件中,每行上有两个正整数x,y,中间用一个空格隔开,最后一行是0 0。
输出
输出文件名为carry.out。
输出文件对于每行数据输出一行,每行中只有一个整数,表示x,y相加时有多少次进位。
输入样例 1
123 4567
555 555
123 594
0 0
输出样例 1
1
3
1
提示
【数据范围】
对于50%的数据:0<x,y<=10000;
对于100%的数据:0<x,y<=1000000000;
对于100%的数据:n<=10000。
代码
#include<iostream>
using namespace std;
int main(){
int n,a,b,c=0,x,y,cnt=0,som=0;
char d[999999];
//cin>>n;
int i;
int qq;
for(i=0;;i++){
cin>>a>>b;
if(a==0&&b==0){
break;
}
cnt=0;
c=0;
while(a>0||b>0){
x=a%10;
y=b%10;
c=(c+x+y)/10;
cnt+=c;
a/=10;
b/=10;
}
cout<<cnt<<endl;
}
return 0;
}