欢迎来到代码驿站!

JAVA代码

当前位置:首页 > 软件编程 > JAVA代码

Java求出任意数字的各个位数之和方式

时间:2022-11-26 10:20:32|栏目:JAVA代码|点击:

求出任意数字的各个位数之和

import java.util.Scanner;
/**
 * 用JAVA求任意一个数的各个位数之和
 * @author Administrator
 *
 */
public class test {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		System.out.print("请输入一个数字:");
		int num = sc.nextInt();
		int sum=0;
		while(num!=0){
			sum = sum + num%10;
			num = num/10;
		}
		System.out.println("所给数字的各个位数之和为:"+sum);		
	} 
}

求一个整数各位数之和

功能:求一个整数各位数之和

输入:一个整数,如999、888、100、等

输出:该整数各位数之和,如999各位之和为27

思路分析

主要思路:也就是求商和余数的算法,不断整除10求余数。

步骤:

假设输入数字为a=999;

设两个数:m和n,n为该数的个位数,m为该数整除10的商。

首先求个位数的数字:n = a%10=9;

然后把这个数现在变成a=a-n;没有个位数了。

降位:m = a/10;

最后求的各位数之和为sum=0,初始化为0;

sum=sum+n;

然后就是不断用m%10;求出当前最后一位数,并更新m,使得m=m/10;

代码

/**
 * 求一个整数各位数的和
 * 输入:0-1000之间的一个整数
 * 输出:该整数各位数相加
 */
package lqp; 
import java.util.Scanner;
 
/**
 * <p>Title:</p>
 * <p>Description:</p>
 * @author Li Qingpei
 * @data 2018年12月7日
 */
public class code_2_6 {
 
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner input = new Scanner(System.in);
		System.out.println("Enter a number between 0 and 1000: ");
		int a = input.nextInt();
		int b = code_2_6.numberSum(a);
		System.out.print("The sum of the digist is "+b);
	}
	public static int numberSum(int a){
		int n = a%10;
		a = a-n;
		int m = a/10;
		int sum=0;
		sum = sum+n;
		
		while(m!=0)
		{
			sum = sum+m%10;
			m=m/10;
		}
		return sum;
	} 
}

上一篇:Sentinel 整合SpringCloud的详细教程

栏    目:JAVA代码

下一篇:Java堆&优先级队列示例讲解(上)

本文标题:Java求出任意数字的各个位数之和方式

本文地址:http://www.codeinn.net/misctech/219896.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有