求100-999之间的水仙花数,打印出来(153=1*1*1+5*5*5+3*3*3)153 471 470用Java代码怎么弄
时间: 2023-11-14 08:39:29 浏览: 32
public class NarcissisticNumber {
public static void main(String[] args) {
for (int i = 100; i <= 999; i++) {
int a = i / 100; // 获取百位数
int b = i % 100 / 10; // 获取十位数
int c = i % 10; // 获取个位数
if (i == a * a * a + b * b * b + c * c * c) { // 判断是否为水仙花数
System.out.print(i + " ");
}
}
}
}
相关问题
、for循坏打印輸出100-999之同的水仙花数(各位数字的立方和等于自己) 153 = 1*1*1 + 5*5*5 +3*3*3
可以使用for循环遍历100-999之间的所有数字,然后判断每个数字是否为水仙花数。判断的方法是将该数字拆分成各个位上的数字,计算它们的立方和,如果等于该数字本身,则该数字为水仙花数。以下是实现代码:
```python
for num in range(100, 1000):
# 拆分数字
digit1 = num // 100
digit2 = (num // 10) % 10
digit3 = num % 10
# 判断是否为水仙花数
if num == digit1 ** 3 + digit2 ** 3 + digit3 ** 3:
print(num)
```
输出结果为:
```
153
370
371
407
```
打印所有水仙花数。所谓水仙花数,是指一个三位的整数,其各位数字的 立方和等于该数本身。 例如:153是水仙花数,因为153=1**3+5**3+3**3
下面是Python代码实现打印所有的水仙花数:
```python
for num in range(100, 1000):
# 分离出百位、十位、个位上的数字
digit1 = num // 100
digit2 = (num // 10) % 10
digit3 = num % 10
# 判断是否为水仙花数
if num == digit1**3 + digit2**3 + digit3**3:
print(num)
```
输出结果:
```
153
370
371
407
```
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)