在Java中,从键盘输入一个4位正整数,判断该数是否是四叶玫瑰数。四叶玫瑰数是一个四位自幂数,它的每个位上的数字的 4次幂之和等于它本身。例如1634就是一个四叶玫瑰数。
时间: 2024-09-09 21:15:01 浏览: 94
在Java中,判断一个四位数是否为四叶玫瑰数,我们需要计算这个四位数每个位上数字的4次幂之和,然后检查这个和是否等于原始的四位数。下面是一个可能的实现方法:
首先,我们需要从键盘读取输入的四位数。然后,通过循环和数学计算来判断这个数是否满足四叶玫瑰数的条件。具体步骤如下:
1. 读取用户输入的四位数。
2. 分别获取这个四位数的千位、百位、十位和个位上的数字。
3. 计算每个位上数字的4次幂之和。
4. 比较这个和是否与原始的四位数相等。
下面是一个简单的Java代码示例:
```java
import java.util.Scanner;
public class FourLeavesRoseNumber {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个四位正整数:");
int number = scanner.nextInt();
if (isFourLeavesRoseNumber(number)) {
System.out.println(number + " 是一个四叶玫瑰数。");
} else {
System.out.println(number + " 不是一个四叶玫瑰数。");
}
scanner.close();
}
private static boolean isFourLeavesRoseNumber(int number) {
int sum = 0;
int originalNumber = number;
while (number > 0) {
int digit = number % 10;
sum += Math.pow(digit, 4);
number /= 10;
}
return sum == originalNumber;
}
}
```
这段代码首先提示用户输入一个四位数,然后通过`isFourLeavesRoseNumber`方法来判断这个数是否是四叶玫瑰数。如果是,打印出相应的信息;如果不是,同样打印出相应的信息。
阅读全文