0-999水仙花数Java
时间: 2024-01-18 07:02:47 浏览: 78
public class NarcissisticNumber {
public static void main(String[] args) {
for(int i=0;i<1000;i++){
if(isNarcissisticNumber(i)){
System.out.print(i+" ");
}
}
}
public static boolean isNarcissisticNumber(int number){
int sum=0;
int temp=number;
while(temp>0){
int digit=temp%10;
sum+=digit*digit*digit;
temp/=10;
}
return sum==number;
}
}
相关问题
输出100-999水仙花数while
水仙花数是指一个三位数,它的每个位上的数字的三次幂之和等于它本身。例如,153是一个水仙花数,因为 1^3 + 5^3 + 3^3 = 153。下面是一个使用while循环输出100-999范围内所有水仙花数的示例代码:
```java
public class NarcissisticNumber {
public static void main(String[] args) {
int number = 100; // 从100开始
while (number <= 999) { // 直到999
int hundred = number / 100; // 获取百位数
int ten = (number % 100) / 10; // 获取十位数
int one = number % 10; // 获取个位数
if (Math.pow(hundred, 3) + Math.pow(ten, 3) + Math.pow(one, 3) == number) {
// 如果三个位置的数字的三次幂之和等于number,则输出该number
System.out.println(number);
}
number++; // 检查下一个数字
}
}
}
```
这段代码首先初始化变量`number`为100,然后使用`while`循环检查从100到999之间的每一个数字。在循环体内,代码首先计算出当前数字的百位、十位和个位数,然后判断这三个数字的三次幂之和是否等于原始数字。如果相等,就输出这个数字。循环结束后,所有的水仙花数都会被打印出来。
1-100之间的水仙花数java
Java代码:
```
public class Main {
public static void main(String[] args) {
for (int i = 1; i <= 100; i++) {
int a = i / 100;
int b = i / 10 % 10;
int c = i % 10;
if (i == a * a * a + b * b * b + c * c * c) {
System.out.println(i);
}
}
}
}
```
上面的代码枚举1到100之间的数,如果满足水仙花数的条件,就将其输出。
关于水仙花数的定义:一个3位数,它的每个位上的数字的立方和等于它本身,例如:153 = 1^3 + 5^3 + 3^3。
阅读全文