python生成水仙花数
时间: 2023-12-29 11:26:34 浏览: 163
以下是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打印所有水仙花数
水仙花数,也叫自恋数或自幂数,是指一个n位数(n≥3),其各位数字的n次方之和等于该数本身。例如,153是一个水仙花数,因为 $1^3 + 5^3 + 3^3 = 153$。以下是打印所有的3位水仙花数的Python代码:
```python
for i in range(100, 1000):
sum = 0
temp = i
while temp > 0:
digit = temp % 10
sum += digit ** 3
temp //= 10
if i == sum:
print(i)
```
运行结果为:
```
153
370
371
407
```
其中,使用 `range(100, 1000)` 生成 100 到 999 的整数序列,使用循环和条件语句,逐个判断每个数是否为水仙花数。具体实现是将每个数的个位、十位、百位上的数字分离出来,分别计算它们的立方和,最后判断原数是否等于这个立方和。如果是,就打印出这个数。
python输出所有水仙花数
水仙花数是指一个三位数,其各位数字的立方和等于该数本身。例如,153是一个水仙花数,因为 $1^3 + 5^3 + 3^3 = 153$。以下是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)
```
这段代码首先使用 `range` 函数生成所有的三位数,然后通过取整运算符 `//` 和取模运算符 `%` 分离出每个数的个位、十位和百位数字。接着,判断这个数字是否等于它的各位数字的立方和,如果是,就将它输出。
阅读全文