读取一个在0-99999之间的整数,将该整数的各位数字相加,如求和结果大于9,则继续对所获得的结果数字按各位相加求和,直至求出的和值小于10。
2017-01-31 14:36
1276 查看
package Second; import java.util.InputMismatchException; import java.util.Scanner; public class Demo3 { /* * 编写程序: 读取一个在0-99999之间的整数,将该整数的各位数字相加,如求和结果大于9,则继续对所获得的结果数字按各位相加求和,直至求出的和值小于10。 */ public static void main(String[] args) { // TODO Auto-generated method stub Scanner scan =new Scanner(System.in); boolean continueInput=true; do{ try{ System.out.println("请输入一个0到99999之间的整数"); int number=scan.nextInt(); int sum=0; if(number>=0&&number<=99999){ for(int i=10000;i>=1;i=i/10){ int num=number/i; sum=sum+num; number=number%i; } if(sum>9){ sum=sum/10+sum%10; System.out.println("各位数字相加和为:"+sum); } else System.out.println("各位数字相加和为:"+sum); } else System.out.println("输入的数字不符合要求!"); continueInput=false; } catch(InputMismatchException ex){ System.out.println("输入的数据格式不符合要求,请输入一个0到99999之间的整数"); scan.nextLine(); } } while(continueInput); } }
相关文章推荐
- 梁勇 java教材 编程练习题 第二章 2.6 键盘 读取一个在0 到 9999 之间的整数,并将该整数的各位数字相加。
- 编写猜字游戏,随机产生一个1-1000的整数,玩家任意输入一个数字,计算器回答大于该数或者小于该数,直至猜中。(显示玩家猜的次数)
- 输入一个数,如果各位数之和小于10,则输出位数之和,否则将位数之和继续求和,直到小于10,并输出
- 判断某三位正整数是否为可逆素数。可逆素数指:一个素数将其各位数字的顺序倒过来构成的反序数也是素数。(提示:首先判断n是否为素数,如果是:则将设法获得n被倒置后的三位数,接着判断其是否为素数。)
- 给定一个集合A=[0,1,3,8](该集合中的元素都是在0,9之间的数字,但未必全部包含), 指定任意一个正整数K,请用A中的元素组成一个大于K的最小正整数。
- 谷歌笔试题--给定一个集合A=[0,1,3,8](该集合中的元素都是在0,9之间的数字,但未必全部包含), 指定任意一个正整数K,请用A中的元素组成一个大于K的最小正整数。
- 有一个整数n(0<n<2147483647)不定长。你要做的是:获取该整数的各位数字,再分别对奇数和偶数求和并输出。
- 给定一个数N,求出1-N之间的数字有多少个1,例如N=11时结果为4(只有1,10,11含1)
- 谷歌笔试题--给定一个集合A=[0,1,3,8](该集合中的元素都是在0,9之间的数字,但未必全部包含), 指定任意一个正整数K,请用A中的元素组成一个大于K的最小正整数。
- 输入一个表达式,没有括号,数字小于0-9之间,输出计算结果,所有的中间结果化为整形。 例如: 输入:3+8×2/9-2 输出:2
- 如果x的x次幂结果为10(参见【图1.png】),你能计算出x的近似值吗? 显然,这个值是介于2和3之间的一个数字。 请把x的值计算到小数后6位(四舍五入),并填写这个小数值。 注意:只填写一
- 给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。 【注意: 如果输入的大于了5位数要求用户重新输入】
- 输入一个表达式,没有括号,数字小于0-9之间,输出计算结果,所有的中间结果化为整形。 例如: 输入:3+8×2/9-2 输出:2
- 258. Add Digits Add to List(整数位上数字相加直到小于10)
- 输入一个表达式,没有括号,数字小于0-9之间,输出计算结果,所有的中间结果化为整形。 例如: 输入:3+8×2/9-2 输出:2
- C#--第2周实验--任务10--编写一个控制台应用--输入一个整数,将其各位数字颠倒顺序后输出
- 谷歌笔试题--给定一个集合A=[0,1,3,8](该集合中的元素都是在0,9之间的数字,但未必全部包含), 指定任意一个正整数K,请用A中的元素组成一个大于K的最小正整数。
- 给定一个集合A=[0,1,3,8](该集合中的元素都是在0,9之间的数字,但未必全部包含), 指定任意一个正整数K,请用A中的元素组成一个大于K的最小正整数。
- 基础算法测试——生成一个1-10之间的随机整数组合
- 基础算法测试——生成一个1-10之间的随机整数组合