调用fun函数判断水仙花数
时间: 2023-09-09 18:08:06 浏览: 63
好的,我理解了你的问题。下面是一个简单的 Python 代码,可以判断一个三位数是否为水仙花数。
```python
def fun(num):
# 将数位拆分
a = num // 100
b = num // 10 % 10
c = num % 10
# 判断是否为水仙花数
if num == a**3 + b**3 + c**3:
return True
else:
return False
```
调用该函数,传入一个三位数参数,即可判断该数是否为水仙花数。例如,如果要判断153是否为水仙花数,可以这样调用:
```python
print(fun(153)) # True
```
希望这个代码对你有帮助。
相关问题
调用函数fun判断水仙花数
以下是Python代码实现:
```python
def fun(n):
s = 0
t = n
while t > 0:
s += (t % 10) ** 3
t //= 10
return s == n
for i in range(100, 1000):
if fun(i):
print(i, end=' ')
```
输出结果为:
```
153 370 371 407
```
其中153、370、371和407都是水仙花数。
调用函数fun判断水仙花数C语言
以下是一个示例程序,使用函数fun判断一个数是否为水仙花数。
```c
#include <stdio.h>
#include <math.h>
int fun(int num) {
int digit, sum = 0, temp = num;
int n = (int)log10(num) + 1; // 求出num的位数
while (temp > 0) {
digit = temp % 10; // 取出个位数字
sum += pow(digit, n); // 每位数字的n次方之和
temp /= 10; // 去掉个位数字
}
if (sum == num) {
return 1; // 是水仙花数
} else {
return 0; // 不是水仙花数
}
}
int main() {
int num;
printf("请输入一个三位数:");
scanf("%d", &num);
if (fun(num)) {
printf("%d 是水仙花数。\n", num);
} else {
printf("%d 不是水仙花数。\n", num);
}
return 0;
}
```
程序中的函数`fun`接受一个整数作为参数,判断该数是否为水仙花数。如果是,返回1;否则返回0。在主函数中,从用户输入中读取一个三位数,调用`fun`函数判断它是否为水仙花数,并输出结果。
阅读全文