正整数的各位数之和

正整数的各位数之和,第1张

正整数的各位数之和

输入:

每行一个正整数(<2^32).

输出:

每行一个输出,对应该数的各位数之和.

方法一:利用整数取余求解

import java.util.Scanner;
import java.lang.Math;
public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		while(sc.hasNext()) {
            long a = sc.nextLong();
			int sum = 0;//用来求和
			while(a!=0) {
				sum += a%10;
				a /= 10;
			}
			System.out.println(sum);
		}
	}
}

注:看清题目要求,输入的正整数是小于2^32,int类型的范围是-2^32~(2^31)-1,明显题目设坑了,输入的数范围超过了int类型,所以要用long类型来接收,至于求和sum的类型int,long都可以

方法二:利用递归求和

import java.util.Scanner;
import java.lang.Math;
public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		while(sc.hasNext()) {
			long a = sc.nextLong();
            long sum = 0;
            sum = s(a);
			System.out.println(sum);
		}
	}
	private static long s(long a) {
		if(a<10) {
			return a;
		}else {
			return a%10+s(a/10);
		}
	}
}

方法三:字符求和

import java.util.Scanner;
import java.lang.Math;
public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		while(sc.hasNext()) {
			String sts = sc.nextLine();
			int sum = 0;
			for(int i=0;i 

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5719207.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-18
下一篇 2022-12-18

发表评论

登录后才能评论

评论列表(0条)

保存