0
点赞
收藏
分享

微信扫一扫

Java程序-水仙花数

IT程序员 2022-02-26 阅读 77

问题描述??

水仙花数是指一个3位数,它的每个位上的数字的3次幂之和等于它本身,例如:13+53+3^3=153。

输出100-999之内的所有水仙花

public class NarcissisticNumber {
	/**
	 * 输出100-999之内的所有水仙花
	 * @param args
	 */
	public static void main(String[] args) {
		for (int number = 100; number < 1000; number++) {
			int ge = number % 10;
			int shi = number / 10 % 10;
			int bai = number / 100 % 10;
			if (ge * ge * ge + shi * shi * shi + bai * bai * bai == number) {
				System.out.println(number + "是水仙花数");
			}
		}
	}
}

用户输入数字,判断是否为水仙花数

import java.util.Scanner;

public class NarcissisticNumber {
	/**
	 * 用户输入数字,判断是否为水仙花数
	 * @param args
	 */

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入一个100~1000以内的数字,判断是否为水仙花数:");
		int number = sc.nextInt();
		if (number > 99 && number < 1000) {
			int ge = number % 10;
			int shi = number / 10 % 10;
			int bai = number / 100 % 10;
			if (ge * ge * ge + shi * shi * shi + bai * bai * bai == number) {
				System.out.println(number + "是水仙花数");
			} else {
				System.out.println(number + "不是水仙花数");
			}

		} else {
			System.out.println("输入错误,请输入一个100~1000以内的数字");
		}
	}
}

水仙花数升级版-练习使用Math.pow函数

import java.util.Scanner;

public class NarcissisticNumber {
	/**
	 * 用户输入数字,判断是否为水仙花数--升级版--练习使用Math.pow函数
	 * 
	 * @param args
	 */

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入一个100~1000以内的三位数字,判断是否为水仙花数:");
		int number = sc.nextInt();
		if (number > 99 && number < 1000) {
			int ge = number % 10;
			int shi = number / 10 % 10;
			int bai = number / 100 % 10;
			if (Math.pow(ge, 3) + Math.pow(shi, 3) + Math.pow(bai, 3) == number) {
				System.out.println(number + "是水仙花数");
			} else {
				System.out.println(number + "不是水仙花数");
			}

		} else {
			System.out.println("输入错误,请输入一个100~1000以内的三位数字");
		}
	}
}

举报

相关推荐

水仙花数(java)

JAVA——水仙花数

打印水仙花数

c水仙花数

0 条评论