用python输出水仙花数
时间: 2023-07-12 13:45:00 浏览: 87
当一个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` 函数中的参数即可。
相关问题
用Python输出水仙花数
可以用Python来编写程序输出水仙花数,以下是代码示例:
```python
for num in range(100, 1000):
# 获取百位、十位和个位上的数字
hundreds = num // 100
tens = num // 10 % 10
ones = num % 10
# 判断是否为水仙花数
if num == hundreds**3 + tens**3 + ones**3:
print(num)
```
运行上述代码,将会输出100到999之间的所有水仙花数。
代码中,我们使用了一个for循环,循环遍历100到999之间的所有三位数。对于每个三位数,我们通过整除和取余运算获取了百位、十位和个位上的数字。然后,我们对这三个数字分别求立方并相加,判断是否等于原数。如果是,就说明这是一个水仙花数,我们将其输出。
用python输出水仙花数和四叶玫瑰数
水仙花数是指一个三位数,其各位数字立方和等于该数本身。例如: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)
```
四叶玫瑰数是指一个四位数,其各位数字四次方和等于该数本身。例如:1634 = 1^4 + 6^4 + 3^4 + 4^4。
以下是输出四叶玫瑰数的Python代码:
```python
for num in range(1000, 10000):
sum = 0
temp = num
while temp > 0:
digit = temp % 10
sum += digit ** 4
temp //= 10
if num == sum:
print(num)
```
阅读全文