功能:编写一 个函数sxh(),它的功能是判街-个三位数是不是水仙花数。 主函
时间: 2024-03-20 11:44:25 浏览: 17
您好,以下是Python语言实现的sxh()函数,用于判断一个三位数是否为水仙花数:
```python
def sxh(num):
"""
判断一个三位数是否为水仙花数
"""
# 判断输入是否为三位数
if num < 100 or num > 999:
return False
# 计算各位数字的立方和
sum = 0
temp = num
while temp > 0:
digit = temp % 10
sum += digit ** 3
temp //= 10
# 判断是否为水仙花数
if sum == num:
return True
else:
return False
```
函数的参数为一个整数,返回值为布尔类型,表示该数是否为水仙花数。如果是水仙花数,则返回True,否则返回False。
相关问题
功能:编写一个函数sxh(),它的功能是判断一个三位数是不是水仙花数。 主函数去调用sxh (),输出100- 1000内所有水仙花数。(普通变量作为函数参数)C语言
以下是C语言代码实现:
```c
#include <stdio.h>
// 判断一个三位数是不是水仙花数的函数
int sxh(int num) {
int a = num / 100; // 获取百位数
int b = num % 100 / 10; // 获取十位数
int c = num % 10; // 获取个位数
if (num == a * a * a + b * b * b + c * c * c) {
return 1; // 是水仙花数返回1
} else {
return 0; // 不是水仙花数返回0
}
}
int main() {
int i;
for (i = 100; i < 1000; i++) {
if (sxh(i)) { // 判断是否是水仙花数
printf("%d\n", i); // 输出水仙花数
}
}
return 0;
}
```
运行结果:
```
153
370
371
407
```
编程输出100-1000之间的水仙花数。利用自定义函数sxh(),功能判断一个三位数是否是水仙花数。
水仙花数是指一个三位数,其各位数字的立方和等于该数本身。例如,153是一个水仙花数,因为1³+5³+3³=153。
以下是利用自定义函数sxh()输出100-1000之间的水仙花数的代码:
```python
def sxh(num):
# 计算各位数字的立方和
sum = 0
for i in str(num):
sum += int(i) ** 3
# 判断是否为水仙花数
if sum == num:
return True
else:
return False
# 输出100-1000之间的水仙花数
for i in range(100, 1000):
if sxh(i):
print(i)
```
输出结果为:
```
153
370
371
407
```