6. 打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身
时间: 2024-09-18 10:15:48 浏览: 48
输出所有的水仙花数,所谓水仙花数是指一个3位数,其各个位上数字立方和等于其本身。
水仙花数(Narcissistic Number 或者 Pluperfect Digital Inequality)是指一个n位正整数,它的每个位上的数字的n次方之和等于它自身。对于3位数,因为是n=3的情况,所以我们要找出所有满足条件的三位数。
举个例子,比如数字153,它的各个位上的数字分别是1、5、3,将这三个数字分别取3次方得到1^3 + 5^3 + 3^3 = 1 + 125 + 27 = 153,所以153是一个水仙花数。
下面是一个简单的Python程序,用于找到所有的3位水仙花数:
```python
for num in range(100, 1000): # 从100到999,不包含100和1000
digits = [int(digit) for digit in str(num)] # 将数字转换为列表
if sum([digit ** 3 for digit in digits]) == num: # 检查是否满足水仙花数条件
print(num)
```
运行此程序会打印出:153, 370, 371, 407.
阅读全文