问题:从键盘上输入任意三位数字,判断是否是水仙花数。
水仙花数指其个位、十位、百位三个数字的立方和等于这个三位数的本身
效果:
代码
package array;
import java.util.Scanner;
public class Exam3 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入三位整数:");
int num = scanner.nextInt();
while (num < 100 || num > 999) {
System.out.println("请输入三位整数:");
num = scanner.nextInt();
}
// 百位上的数字
int hundred = num / 100;
// 十位上的数字
int ten = num % 100 / 10;
// 个位上的数字
int individual = num % 100 % 10;
// 三个位上的数立方之和
int count = (int) ((int) ((int) Math.pow(hundred, 3) + Math.pow(ten, 3)) + Math
.pow(individual, 3));
if (count == num) {
System.out.println("您输入的数字是" + num + ",是水仙花数。");
} else {
System.out.println("您输入的数字是" + num + ",不是水仙花数。");
}
}
}