zoukankan      html  css  js  c++  java
  • 给出一个非负整数 num,反复的将所有位上的数字相加,直到得到一个一位的整数。

     1 package digitAddTogither;
     2 
     3 /**
     4  * Created by ZKY on 2017-08-15 01:00.
     5  * 给出一个非负整数 num,反复的将所有位上的数字相加,直到得到一个一位的整数。
     6  * 样例
     7  * 给出 num = 38。
     8  * 相加的过程如下:3 + 8 = 11,
     9  * 1 + 1 = 2。
    10  * 因为 2 只剩下一个数字,所以返回 2。
    11  */
    12 public class DoMain
    13 {
    14     /**
    15      * Get a number's all digit's sum.
    16      * @param num
    17      * @return
    18      */
    19     public int geSum(int num)
    20     {
    21         int sum = 0;
    22         while(num >0)
    23         {
    24             int temp = num %10;
    25             num /= 10;
    26             sum+=temp;
    27         }
    28          return sum;
    29     }
    30 
    31     /**
    32      * 获取一个数的各位和,并判断和是否满足个位数,满足就返回结果。否者继续。
    33      * @param num
    34      * @return
    35      */
    36     public int getAdigit(int num)
    37     {
    38         while(num >=10)
    39         {
    40             num = geSum(num);
    41         }
    42          return num;
    43     }
    44 
    45 
    46 
    47     public static void main(String[] args)
    48     {
    49         DoMain doMain = new DoMain();
    50         int adigit = doMain.getAdigit(38);
    51         System.out.println(doMain.getAdigit(45));
    52         System.out.println(doMain.getAdigit(23));
    53         System.out.println(doMain.getAdigit(69));
    54         System.out.println(doMain.getAdigit(123));
    55         System.out.println(doMain.getAdigit(6623));
    56     }
    57 }

    一开始想到的是递归,但是想了半天写出来的程序返回并不正确。

    换一种思路就很快写出了这个。

  • 相关阅读:
    Spring MVC+Spring +Hibernate配置事务,但是事务不起作用
    Spring MVC 上传文件
    早安日语1
    Spring MVC学习初篇
    Eclipse中查看JDK源码设置
    Eclipse常见设置及快捷键使用总结(更新中)
    Java中boolean型变量的默认值问题
    [转载]浅析Java中的final关键字
    Eclipse中Outline里各种图标的含义
    [转载]深入理解JAVA的接口和抽象类
  • 原文地址:https://www.cnblogs.com/zkycode/p/7362360.html
Copyright © 2011-2022 走看看