java od机试 水仙花数2 csdn
时间: 2023-09-20 08:02:00 浏览: 96
【免费题库】华为OD机试 - 水仙花数(Java & JS & Python & C & C++).html
水仙花数是指一个三位数,它的个位数字的立方、十位数字的立方和百位数字的立方之和等于自身。例如,153是一个水仙花数,因为1³+5³+3³=153。
关于"java od机试 水仙花数2 csdn"这个题目,我理解为需要使用Java编程语言解决水仙花数问题,并参考CSDN相关文章中的方法。
首先,我们需要编写一个Java程序来判断一个三位数是否为水仙花数。代码如下:
```java
public class NarcissisticNumbers {
public static void main(String[] args) {
for (int i = 100; i < 1000; i++) {
if (isNarcissisticNumber(i)) {
System.out.print(i + " ");
}
}
}
public static boolean isNarcissisticNumber(int num) {
int digit1 = num % 10; // 获取个位数
int digit2 = (num / 10) % 10; // 获取十位数
int digit3 = num / 100; // 获取百位数
int sum = (int) (Math.pow(digit1, 3) + Math.pow(digit2, 3) + Math.pow(digit3, 3));
return sum == num;
}
}
```
以上代码首先使用`for`循环遍历所有的三位数,然后通过`isNarcissisticNumber`方法判断每个数是否为水仙花数。`isNarcissisticNumber`方法中,我们使用取模和除法运算来获取每个位上的数字,并计算立方和。最后,我们将结果与原始数进行比较,如果相等,则说明该数是水仙花数。
参考CSDN文章中可能会提供更多关于水仙花数的解释、其他算法实现或者优化等内容,可以在文章中进一步学习。
阅读全文