python输出水仙花数
时间: 2023-10-04 09:12:43 浏览: 55
水仙花数指一个三位数,其各位数字立方和等于该数本身。因此,可以使用下面的 Python 代码来输出所有水仙花数:
```python
for num in range(100, 1000):
# 分解出个位、十位、百位
digit1 = num % 10
digit2 = (num // 10) % 10
digit3 = num // 100
# 判断是否符合条件
if num == digit1 ** 3 + digit2 ** 3 + digit3 ** 3:
print(num)
```
输出结果为:
```
153
370
371
407
```
相关问题
Python输出水仙花数
水仙花数,又称阿姆斯特朗数,是指一个n位数(n≥3),它的每个位上的数字的 n 次幂之和等于它本身。例如:1^3 + 5^3 + 3^3 = 153。
以下是使用 Python 编写的程序,可以输出指定范围内的水仙花数:
```python
lower = int(input("请输入区间最小值: "))
upper = int(input("请输入区间最大值: "))
for num in range(lower, upper + 1):
# 按位分离数字
order = len(str(num))
sum = 0
temp = num
while temp > 0:
digit = temp % 10
sum += digit ** order
temp //= 10
if num == sum:
print(num)
```
在程序中,输入区间的最小值和最大值后,使用 for 循环遍历该范围内的所有数字。对于每个数字,程序将其按位分离,计算各位数字的 n 次幂之和。如果该数字等于它的各位数字的 n 次幂之和,则输出该数字。
用python输出水仙花数
当一个n位正整数等于其各位数字n次方之和时,我们称该数为水仙花数。例如:153=1^3+5^3+3^3。
以下是用 Python 输出水仙花数的代码:
```python
for num in range(100, 1000):
sum = 0
temp = num
while temp > 0:
digit = temp % 10
sum += digit ** 3
temp //= 10
if num == sum:
print(num)
```
这段代码会输出所有的三位水仙花数。如果你想输出其他位数的水仙花数,只需要修改 `range` 函数中的参数即可。
阅读全文