寻找水仙花数Python
时间: 2023-10-20 15:12:31 浏览: 183
水仙花数是指一个三位数,它的各位数字的立方和等于该数本身。比如153就是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。以下是Python代码实现:
```python
for i in range(100, 1000):
# 分离i的百位、十位、个位数字
a = i // 100
b = (i // 10) % 10
c = i % 10
# 判断是否为水仙花数
if i == a**3 + b**3 + c**3:
print(i)
```
运行结果:
```
153
370
371
407
```
相关问题
打印水仙花数python
打印水仙花数是指一个三位数,它的各位数字立方和等于其本身。例如,153是一个水仙花数,因为 1^3 + 5^3 + 3^3 = 153。在Python中,你可以编写一个函数来检查并打印所有的水仙花数。这里有一个简单的实现:
```python
def is_armstrong_number(n):
# 将数字转换为字符串以便计算每个位的数字
str_n = str(n)
length = len(str_n)
# 计算每位数字的立方和
sum_of_cubes = sum(int(digit) ** length for digit in str_n)
return n == sum_of_cubes
# 遍历从100到999的范围寻找水仙花数
for num in range(100, 1000):
if is_armstrong_number(num):
print(num, "is a Narcissistic number (Waterfall number in this case)")
```
这个程序会遍历所有三位数,并对每个数调用 `is_armstrong_number` 函数。如果返回 `True`,则说明该数是水仙花数。
快速水仙花数python
### Python 实现寻找水仙花数
水仙花数是指一个 n 位正整数 (n≥3),它的每个位上的数字的 n 次幂之和等于它本身。对于三位数来说,就是该数各个位上数字立方和等于其本身。
下面是一个高效的 Python 函数来找出所有的水仙花数:
```python
def find_narcissistic_numbers():
narcissistic_nums = []
for num in range(100, 1000):
sum_of_powers = 0
temp_num = num
while temp_num > 0:
digit = temp_num % 10
sum_of_powers += digit ** 3
temp_num //= 10
if sum_of_powers == num:
narcissistic_nums.append(num)
return narcissistic_nums
```
此函数通过遍历所有可能的三位数值并检查它们是否满足水仙花数条件来工作[^1]。为了提高效率,在循环内部使用了临时变量 `temp_num` 来保存当前处理中的值,并且只对这些特定范围内的数字进行了测试。
当执行上述代码时,将会返回符合条件的所有水仙花数列表[^1]。
阅读全文
相关推荐
![py](https://img-home.csdnimg.cn/images/20250102104920.png)
![docx](https://img-home.csdnimg.cn/images/20241231044901.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://img-home.csdnimg.cn/images/20241231045053.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)