5. 编写程序,打印出所有的“水仙花数” 。所谓水仙花就是指一个三位数,其各个位上的数字的立方之和正好等于该数字本身。
时间: 2023-05-13 07:05:47 浏览: 30
以下是打印所有水仙花数的 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)
输出结果为:
153
370
371
407
这些数字都是水仙花数。
相关问题
编写一个打印出所有水仙花数的程序
水仙花数指一个n位数 (n≥3),它的每个位上的数字的n次幂之和等于它本身。
例如:1^3 + 5^3 + 3^3 = 153
以下是一个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)
```
解释:
1. 使用for循环遍历所有3位数(100到999)。
2. 将当前数字保存在变量num中,并将sum变量初始化为0。
3. 使用while循环将num的每个位上的数字的三次幂相加,保存在sum变量中。
4. 如果num等于sum,则将num打印出来。
Python编写程序实现打印第一个三位数的水仙花数(水仙花数是指一个)
以下是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)
break
```
这个程序使用了一个 for 循环来遍历所有的三位数,然后用整除和取模操作符分离出百位、十位和个位。接着,它判断这个数是否为水仙花数,如果是,就打印出来并且使用 break 语句退出循环。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![java](https://img-home.csdnimg.cn/images/20210720083646.png)
![cpp](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)