KiKi今年5岁了,已经能够认识100以内的非负整数,并且并且能够进行 100 以内的非负整数的加法计算

问题:KiKi今年5岁了,已经能够认识100以内的非负整数,并且并且能够进行 100 以内的非负整数的加法计算。不过,BoBo老师发现KiKi在进行大于等于100的正整数的计算时,规则如下:

  1.   只保留该数的最后两位,例如:对KiKi来说1234等价于34;
    
  2.   如果计算结果大于等于 100, 那么KIKI也仅保留计算结果的最后两位,如果此两位中十位为0,则只保留个位。
    

例如:45+80 = 25

要求给定非负整数 a和 b,模拟KiKi的运算规则计算出 a+b 的值。

第一遍完成的源代码是这样的

public class Main
{
    public static void main(String[] args)
    {
        java.util.Scanner sc = new java.util.Scanner(System.in);
        int a = sc.nextInt();
        int b = sc.nextInt();
        while(b>=100)
        {
            b=b-100;
        }
        while(a>=100)
        {
            a=a-100;
        }
        int sum;
        sum = a + b;
        while(sum>=100)
        {
            sum=sum-100;
        }
        System.out.println(sum);
    }
}

在提交后,成功运行,但是总是感觉不是很好,因为当时实在想不起来怎么保留后面的数,心理一直冒上来的念头是取余消位,取余消位害人不浅呀。然后去看了一下别人提交的c++代码,然后就有了我下面的思路,感觉效率完全就是两个级别。
程序设计新手,代码复习用,欢迎大佬指正!

public class Main
{
    public static void main(String[] args)
    {
        java.util.Scanner sc = new java.util.Scanner(System.in);
        int a = sc.nextInt();
        int b = sc.nextInt();
        int sum;
        sum = a + b;
        while(sum>=100)
        {
            sum=sum%100;
        }
        System.out.println(sum);
    }
}
发布了10 篇原创文章 · 获赞 0 · 访问量 78

猜你喜欢

转载自blog.csdn.net/weixin_46265590/article/details/104832755
今日推荐