用Java代码写出100到999的水仙花数
时间: 2023-04-03 09:00:37 浏览: 61
以下是Java代码实现:
public class NarcissisticNumber {
public static void main(String[] args) {
for (int i = 100; i <= 999; i++) {
int a = i / 100;
int b = i / 10 % 10;
int c = i % 10;
if (a * a * a + b * b * b + c * c * c == i) {
System.out.println(i);
}
}
}
}
这段代码可以输出100到999之间的所有水仙花数。
相关问题
利用java写求出100至999之间所有的水仙花数。
水仙花数是指一个三位数,其各位数字立方和等于该数本身。例如153就是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。
以下是Java代码实现:
```java
public class NarcissisticNumber {
public static void main(String[] args) {
for (int i = 100; i < 1000; i++) {
int hundreds = i / 100; // 百位数字
int tens = (i % 100) / 10; // 十位数字
int ones = i % 10; // 个位数字
if (i == hundreds * hundreds * hundreds + tens * tens * tens + ones * ones * ones) {
System.out.println(i);
}
}
}
}
```
运行结果为:
153
370
371
407
JAVA用方法写水仙花数代码
好的,下面是一个使用方法的JAVA代码,用于找出所有的水仙花数:
```java
public class Main {
public static void main(String[] args) {
for (int i = 100; i <= 999; i++) {
if (isNarcissisticNumber(i)) {
System.out.println(i);
}
}
}
// 判断一个数是否为水仙花数
public static boolean isNarcissisticNumber(int num) {
int sum = 0;
int temp = num;
while (temp != 0) {
int digit = temp % 10;
sum += digit * digit * digit;
temp /= 10;
}
return sum == num;
}
}
```
这个程序定义了一个名为isNarcissisticNumber的方法,用于判断一个三位数是否为水仙花数。在主方法中,使用for循环遍历所有三位数,然后调用isNarcissisticNumber方法来判断它们是否为水仙花数。如果是,将其输出到控制台。
注:isNarcissisticNumber方法的返回值为布尔类型,表示一个数是否为水仙花数。该方法使用while循环计算一个数的各个位数的立方和,并将其与原来的数进行比较。如果相等,则返回true,否则返回false。