使用java语句中的if for 语句查找并输出所有三位数的水仙花数,输出格式为每个整数占六列宽度
时间: 2024-10-03 07:02:52 浏览: 34
python输入一个水仙花数(三位数) 输出百位十位个位实例
在Java中,我们可以使用`if`和`for`循环来查找和判断是否为水仙花数(也称为 narcissistic number,即一个数字等于其各个位上数字的三次幂之和)。下面是一个示例程序:
```java
public class Main {
public static void main(String[] args) {
for (int num = 100; num <= 999; num++) { // 从100到999,包含边界
int sumOfDigits = 0;
String digits = Integer.toString(num);
for (char digit : digits.toCharArray()) {
sumOfDigits += Math.pow(Integer.parseInt(Character.toString(digit)), 3); // 计算每一位立方和
}
if (sumOfDigits == num) { // 如果和等于原数,就是水仙花数
System.out.printf("%6d", num); // 输出,每六个字符(包括空格)占一列
System.out.println(); // 每找到一个就换行
}
}
}
}
```
这个程序会遍历100到999的所有整数,对于每一个数,它会计算每一位的立方和,并检查是否等于原始数字。如果是,就使用`printf`格式化输出,保证每个数字占据六列宽。
阅读全文