利用Java编译输入一个三位数(xxx),输出确认它是否是一个水仙花数。所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数。 例如234不是一个水仙花数。程序运行显示:
时间: 2024-09-26 17:07:58 浏览: 22
在Java中,我们可以编写一个函数来检查一个三位数是否是水仙花数。首先,我们需要读取用户的输入,并检查它是否满足三位数的条件。然后我们将每位数字立方并求和,如果和等于原数本身,则说明它是水仙花数。以下是具体的代码实现:
```java
import java.util.Scanner;
public class NarcissisticNumber {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个三位数:");
int num = scanner.nextInt();
if (num < 100 || num > 999) {
System.out.println("输入错误,需要是三位数!");
return;
}
int sumOfCubes = checkIfNarcissistic(num);
if (sumOfCubes == num) {
System.out.println(num + " 是一个水仙花数。");
} else {
System.out.println(num + " 不是水仙花数。");
}
}
private static int checkIfNarcissistic(int number) {
int firstDigit = number / 100; // 取百位
int secondDigit = (number / 10) % 10; // 取十位
int lastDigit = number % 10; // 取个位
return Math.pow(firstDigit, 3) + Math.pow(secondDigit, 3) + Math.pow(lastDigit, 3);
}
}
```
在这个程序中,`checkIfNarcissistic` 函数负责计算和验证数字是否是水仙花数。