用Python求三位水仙花数
时间: 2023-11-19 19:51:59 浏览: 120
好的,以下是用 Python 求三位水仙花数的代码:
```python
for i in range(100,1000):
a = i // 100
b = (i // 10) % 10
c = i % 10
if a ** 3 + b ** 3 + c ** 3 == i:
print(i)
```
输出结果为:
```
153
370
371
407
```
这四个数就是三位水仙花数。
相关问题
python123三位水仙花数
根据题目所提供的定义,"水仙花数"是指一个三位整数,其各位数字的立方和等于该数本身。根据题目要求按照从小到大的顺序输出所有的三位水仙花数,我们可以通过编写一个Python程序来实现。以下是一个示例代码:
```python
result = []
for num in range(100, 1000):
digit1 = num // 100
digit2 = (num // 10) % 10
digit3 = num % 10
if digit1 ** 3 + digit2 ** 3 + digit3 ** 3 == num:
result.append(str(num))
output = ",".join(result)
print(output)
```
该代码通过一个循环遍历所有的三位数,然后分别取出每位数字,并进行立方运算。如果立方和等于该数本身,则将该数添加到结果列表中。最后,我们将结果列表转换为字符串,并用英文逗号分隔每一个水仙花数。运行该代码,可以得到按照从小到大的顺序输出的所有三位水仙花数。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [Python打印所有水仙花数](https://blog.csdn.net/m0_51336041/article/details/121788514)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [Python123.io---三位水仙花数](https://blog.csdn.net/liiuyizeliuyize/article/details/129371641)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
python循环三位水仙花数
以下是使用Python编写循环三位水仙花数的代码示例:
```python
print('三位水仙花数:', end='')
for i in range(100, 1000):
units = i % 10
tens = i % 100 // 10
hundreds = i // 100
if i == (units ** 3) + (tens ** 3) + (hundreds ** 3):
print(i, end=' ')
```
或者,你也可以使用另一种方法来判断水仙花数:
```python
while True:
num = float(input('请输入三位数整数:'))
if num > int(num):
print('{}不是整数!!!'.format(num))
continue
if num < 100 or num > 999:
print('{}不是三位正整数!!!'.format(int(num)))
continue
units = num % 10
tens = num % 100 // 10
hundreds = num // 100
if num == (units ** 3) + (tens ** 3) + (hundreds ** 3):
print('{}是水仙花数'.format(int(num)))
else:
print('{:.0f}不是水仙花数'.format(num))
```
还可以使用另一种方法来判断水仙花数:
```python
L = 100
while L < 1000:
s = L // 100
z = (L - s * 100) // 10
a = L - s * 100 - z * 10
if L == (s ** 3) + (z ** 3) + (a ** 3):
print("L=", L)
L += 1
```
请根据你的需要选择其中一种方法来运行并输出循环的三位水仙花数。
阅读全文