题目描写叙述:

求整数的Root:给定正整数,求每位数字之和;假设和不是一位数,则反复;

输入:输入随意一个或多个整数

输出:输出各位数字之和,直到和为个位数为止(输入异常,则返回-1),多行,每行相应一个输入数据的结果。

例子输入:

25

865

例子输出:

7

1

解题思路:对于给定的数n,使用n%10来分离n获得各个位上的数,然后进行相加,假设和大于10,继续分离,继续求和。直到和小于10.

代码例如以下:

public class root_Number
{
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
while (sc.hasNext())
{
int num=sc.nextInt();
int sum=0;
while (num!=0)
{
if (num<=0)
{
System.out.println(-1);
return;
}
while (num!=0)
{
sum=num%10+sum;
num/=10;
}
if (sum>=10&&num==0)
{
num=sum;
sum=0;
continue;
}
System.out.println(sum);
}
}
sc.close();
}
}

最新文章

  1. Redis作为消息队列服务场景应用案例
  2. 小Q系列之 最佳裁判
  3. Spring基本概念
  4. php ioc and web rest design
  5. 另类方法解决设计Web页面出现:Error Creating Control
  6. Learn know more about big data
  7. mysql修改主键
  8. cannot find the word template:WordToRqm.dot的解决方法
  9. css3中的圆角属性
  10. Execution failed for task&#39;:app;clean&#39;
  11. Ditto在教学上的应用
  12. jQuery 事件对象的属性
  13. Python中利用进度条求圆周率
  14. 用于文本分类的多层注意力模型(Hierachical Attention Nerworks)
  15. jsoup 解析html
  16. AssetBundle打包详解
  17. MySQL -- 主从复制的可靠性与可用性
  18. FFmpeg编译:Linux下使用NDK编译FFmpeg
  19. 不要提交代码到HEAD上
  20. 匹克定理pick

热门文章

  1. Servlet 小试牛刀(doGet,doPost)
  2. tornado远远不止
  3. 学习Swift -- 数组(Array) - 持续更新
  4. C#匿名类型(Anonymous Type)学习日记
  5. Java语言基础(四) String和StringBuffer的区别
  6. linux平台的office文档转pdf(程序员的菜)
  7. mysql表分区、查看分区
  8. wpf 动画
  9. bzoj1391
  10. mapreduce引用第三方jar