zoukankan      html  css  js  c++  java
  • 21-语言入门-21-小学生算术

     
     
    描述
    很多小学生在学习加法时,发现进位特别容易出错。你的任务是计算两个三位数在相加时需要多少次进位。你编制的程序应当可以连续处理多组数据,直到读到两个0(这是输入结束标记)。

    输入
    输入两个正整数m,n.(m,n,都是三位数)
    输出
    输出m,n,相加时需要进位多少次。
    样例输入
    123 456
    555 555
    123 594
    0 0
    样例输出
    0
    3
    1
     
     
     
    代码:
     
     
    #include <stdio.h>

    //计算结果
    static int calResult(int a,int b);

    int main()
    {
       
    int a = 0;
       
    int b = 0;
       
       
    while (1)
        {
           
    scanf("%d %d",&a,&b);
           
    getchar();
           
           
    if (a == 0 && b== 0)
            {
               
    break;
            }
           
           
    printf("%d ",calResult(a, b));
        }
       
       
       
    return 0;
    }

    //计算结果
    static int calResult(int a,int b)
    {
       
    int sub = a+b;
       
       
    int result = 0;
       
    do
        {
           
    int tmpValue = sub % 10;
           
    int tmpA = a % 10;
           
    int tmpB = b % 10;
           
           
    //若没有进位,和比任一个都大
           
    if (tmpValue >=  tmpA &&
                tmpValue >=  tmpB)
            {
               
    //排除都是0的情况
               
    if(tmpValue == tmpA && tmpValue == tmpB && tmpValue != 0)
                {
                    ++result;
                }
            }
           
    else
            {
                ++result;
            }
           
            a = a/
    10;
            b = b/
    10;
            sub = sub /
    10;
        }
    while(a>0);
       
       
    return result;
    }
     
    按照从右到左顺序判断每位的两个和与10对比可以计算,
    上述代码是从两数之和与两个数的关系进行逐位对比大小来计算,思路不一样,作为参考吧。
     
  • 相关阅读:
    【服务器】Https服务配置
    【小程序】模拟请求加载数据(本地数据(无服务器))
    BlockingQueue深入解析
    通过maven下载源码和javadoc方法
    运维随笔
    Linux的虚拟内存管理-如何分配和释放内存,以提高服务器在高并发情况下的性能,从而降低了系统的负载
    java写卷积神经网络---CupCnn简介
    使用tcmalloc替换系统的malloc
    Java 进程占用 VIRT 虚拟内存超高的问题研究
    Java8 jvm参数
  • 原文地址:https://www.cnblogs.com/sharpfeng/p/5141742.html
Copyright © 2011-2022 走看看