题目74
题目信息运行结果本题排行讨论区小学生算术
时间限制:3000 ms | 内存限制:65535 KB
难度:1
描述
很多小学生在学习加法时,发现“进位”特别容易出错。你的任务是计算两个三位数在相加时需要多少次进位。你编制的程序应当可以连续处理多组数据,直到读到两个0(这是输入结束标记)。
输入
输入两个正整数m,n.(m,n,都是三位数)
输出
输出m,n,相加时需要进位多少次。
样例输入
123 456
555 555
123 594
0 0样例输出
0
3
1
#include <iostream>
using namespace std;
int main()
{
int m,n,i,j,k;
while(cin>>m>>n,m||n ) //while(cin>>m>>n,m&&n )
{
if((m>=100&& m<1000)&&(n>=100&& n<1000))
if(m%10+n%10>=10) i=1 ; else i=0; //个位
if(m/10%10+n/10%10+i>=10) j=1; else j=0; //十位·
if(m/100%10+n/100%10+j>=10) k=1; else k=0 ; // 百位·
cout<< i+j+k<<endl;
}
}
***************************
**************************************
#include <iostream>
using namespace std;
int main()
{
int m,n,i,j,k;
while(cin>>m>>n )
{
if((m>=100&& m<1000)&&(n>=100&& n<1000))
if(m%10+n%10>=10) i=1 ; else i=0; //个位
if(m/10%10+n/10%10>=10) j=1; else j=0; //十位·
if(m/100%10+n/100%10>=10) k=1; else k=0 ; // 百位·
cout<< i+j+k<<endl;
}
}
***********
error error
**********************
#include <iostream>
using namespace std;
int main()
{
int m,n,i,j,k;
while(cin>>m>>n,m||n )
{
if((m>=100&& m<1000)&&(n>=100&& n<1000))
if(m%10+n%10>=10) i=1 ; else i=0; //个位
if(m/10%10+n/10%10>=10) j=1; else j=0; //十位·
if(m/100%10+n/100%10>=10) k=1; else k=0 ; // 百位·
cout<< i+j+k<<endl;
}
}
***************************************************************
#include <iostream>
using namespace std;
int main()
{ int a,b;
while(cin>>a>>b)
{
int s=0;
if(a==0&&b==0) break;
if(a%10+b%10>=10){s++;}
if((a%10+b%10>=10)&&((a/10%10+b/10%10+1)>=10)){s++;}
if((a/10%10+b/10%10)>=10||(a%10+b%10>=10&&(a/10%10+b/10%10+1>=10))){s++;}
cout<<s<<endl;
}
}
****************************
#include<stdio.h>
int main()
{
int m,n,i,j,k;
while(scanf("%d %d",&m,&n)&&m!=0&&n!=0)
{
if(m>100&&m<1000 && n>100&&n<1000)
{
if((m%10+n%10)>=10) i=1; else i=0;
if((m/10%10+n/10%10+i)>=10) j=1; else j=0;
if((m/100+n/100+j)>=10) k=1; else k=0;
}
printf("%d\n",i+j+k);
}
}
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#include<stdio.h>
int main()
{
int m,n,i,j,k;
while(scanf("%d %d",&m,&n)&&m!=0&&n!=0)
{
if(m>100&&m<1000 && n>100&&n<1000)
if((m%10+n%10)>=10) i=1; else i=0;
if((m/10%10+n/10%10+i)>=10) j=1; else j=0;
if((m/100+n/100+j)>=10) k=1; else k=0;
printf("%d\n",i+j+k);
}
}
原文:http://www.cnblogs.com/2014acm/p/3901488.html