用java求一个整数各位数字之各

2024-11-17 08:56:55
推荐回答(5个)
回答(1):

public static int sumDig(int n){

        int sum=0;

        if(n>=10){

            sum+=n%10;

            sum+=sumDig(n/10);

        }

        else sum+=n;

        return sum;

    }

 

public class JavaApplication4 {
/**
* @param args the command line arguments
*/
public static int sumDig(int n){
int sum=0;
if(n>=10){
sum+=n%10;
sum+=sumDig(n/10);
}
else sum+=n;
return sum;
}
public static int sumDig2(int n){
int sum=0;
while(n>=10){
sum+=n%10;
n/=10;
}
sum+=n;
return sum;
}
public static void main(String[] args) {
// TODO code application logic here
java.util.Scanner sc=new java.util.Scanner(System.in);
int n=sc.nextInt();
System.out.println(sumDig(n));
System.out.println(sumDig2(n));
}
}

两个方法,你自己选择吧。。看懂哪个就用哪个

回答(2):

标准答案之一,超简的:
public static int sumDig(long n)
{
int result=0; //定义一个int类型的变量来存取最后结果
while(n!=0) //判断所要进行查询的数是不是为0
{
result+=n%10; //获得其各位上的数字
n/=10;
}
return result; //取得最终结果
}

回答(3):

先算出这个整数的位数,再取到一个整数的个位十位百位等等等,然后求和

回答(4):

这个好写,就对输入的数字求余取莫就好了, 我先去写写 不急。。

回答(5):

1、把数字当作字符串来处理

2、获取每一个

3、然后转数字再加另外一个。。

4、见图

5、见代码

/**

* 公司 深圳市海枫科技有限公司

* 创建时间 2018年6月22日

* 邮件 charles@hoifun.com

*/

package com.itdugu.unit01.test1;

import java.util.Scanner;

public class Test2 {

public static void main(String[] args) {

int num = 1234;

String str = String.valueOf(num);

int sum = 0;

for (int i = 0; i < str.length(); i++) {

sum += Integer.valueOf("" + str.charAt(i));

}

System.out.println(num + "每个数字相加的和为:" + sum);

}

}