【题目描述】
在学习加法时,我发现“进位”特别容易出错。你的任务是计算两个三位数在相加时需要多少次进位。你编制的程序应当可以连续处理多组数据,直到读到两个 0(这是输入结束标记)。
【输入】
输入两个正整数 m,n( m,n都是三位数)。
【输出】
输出 m,n,相加时需要进位多少次。
【输入样例】
123 456 555 555 123 594 0 0
【输出样例】
0 3 1参考程序
- #include<bits/stdc++.h>
- using namespace std;
- int main()
- {
- int a,b,n,ans=0;
- int a1,a2,a3,b1,b2,b3;
- while(cin>>a>>b)
- {
- ans=0;
- if(a==0 && b==0)
- break;
- a1=a%10;
- a2=a/10%10;
- a3=a/100;
- b1=b%10;
- b2=b/10%10;
- b3=b/100;
- n=(a1+b1)/10;
- if(n>0)
- ans++;
- n=(n+a2+b2)/10;
- if(n>0)
- ans++;
- n=(n+a3+b3)/10;
- if(n>0)
- ans++;
- cout<<ans<<endl;
- }
- return 0;
- }