打印水仙花数python
时间: 2024-09-24 14:10:22 浏览: 57
打印水仙花数是指一个三位数,它的各位数字立方和等于其本身。例如,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 打印水仙花数的代码:
```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)
```
水仙花数python语言程序
水仙花数(Narcissistic number)也被称为阿姆斯特朗数(Armstrong number),是指一个n位数,其各位数字的n次方和等于该数本身。例如,153是一个3位数,且1^3 + 5^3 + 3^3 = 153。
使用Python语言编写一个寻找水仙花数的程序,可以遵循以下步骤:
1. 确定一个范围,比如从100到999,因为这是一个三位数的范围。
2. 遍历这个范围内的每一个数。
3. 对于每一个数,计算其各位数字的立方和。
4. 如果这个立方和等于原数,则该数是一个水仙花数。
5. 将所有的水仙花数打印出来。
以下是一个简单的Python程序示例:
```python
# 打印出所有的三位水仙花数
for num in range(100, 1000):
# 计算每个位上数字的立方和
sum_of_cubes = sum(int(digit) ** 3 for digit in str(num))
# 如果立方和等于原数,则是水仙花数
if num == sum_of_cubes:
print(num)
```
这段代码会输出所有的三位水仙花数。如果你需要其他位数的水仙花数,比如四位数,你需要调整范围,并且将立方和改为四次方和即可。
阅读全文
相关推荐
















