python求1000以内的水仙花数
时间: 2023-04-21 08:03:42 浏览: 112
以下是 Python 中实现水仙花数的代码:
```python
for num in range(1, 1001):
# 计算当前数字的位数
num_len = len(str(num))
# 初始化变量 sum 为 0
sum = 0
# 遍历每一位数字,并计算其 num_len 次方的和
for digit in str(num):
sum += int(digit) ** num_len
# 如果和等于当前数字,打印输出
if sum == num:
print(num)
```
输出结果为:
```
1
2
3
4
5
6
7
8
9
153
370
371
407
```
其中,1 到 1000 之间的水仙花数有 4 个,分别是 1、153、370 和 407。
相关问题
python求1000以内水仙花数和完数
以下是求1000以内水仙花数和完数的Python代码示例:
1. 求1000以内的水仙花数:
```python
for i in range(100, 1000):
if int(str(i)[0])**3 + int(str(i)[1])**3 + int(str(i)[2])**3 == i:
print("%d 是水仙花数" % i)
```
2. 求1000以内的完数:
```python
for i in range(1, 1000):
sum = 0
for j in range(1, i):
if i % j == 0:
sum += j
if sum == i:
print("%d 是完数" % i)
```
Python输出1000以内水仙花数的代码?
代码如下:for num in range(1,1000):
temp = num
sum = 0
while temp > 0:
digit = temp % 10
sum += digit ** 3
temp //= 10 if num == sum:
print(num)
阅读全文