java编程输出两数之间的所有水仙花数并在没有水仙花数时输出“这两个数范围内无水仙花数”
时间: 2024-05-09 21:18:24 浏览: 58
好的,让我帮您解决这个问题。以下是Java编程输出两个数之间的所有水仙花数的代码:
```java
import java.util.Scanner;
public class NarcissisticNumbers {
public static void main(String[] args) {
// 读取用户输入的两个整数
Scanner input = new Scanner(System.in);
System.out.print("请输入两个整数:");
int m = input.nextInt();
int n = input.nextInt();
// 对范围内的每个数进行判断
boolean hasNarcissisticNumber = false;
for (int i = m; i <= n; i++) {
if (isNarcissisticNumber(i)) {
System.out.print(i + " ");
hasNarcissisticNumber = true;
}
}
// 输出结果
if (!hasNarcissisticNumber) {
System.out.println("这两个数范围内无水仙花数");
}
}
// 判断一个数是否为水仙花数
public static boolean isNarcissisticNumber(int n) {
int sum = 0;
int temp = n;
int length = String.valueOf(n).length();
while (temp != 0) {
int digit = temp % 10;
sum += Math.pow(digit, length);
temp /= 10;
}
return sum == n;
}
}
```
您可以将上面的代码复制粘贴到您的IDE或文本编辑器中,然后运行它,输入两个整数,程序将输出它们之间的所有水仙花数或者“这两个数范围内无水仙花数”。
阅读全文