调用函数fun判断一个三位数是否是"水仙花数"。在main函数中从键盘输入一个三位数,并输出判断结果。请编写fun函数。所谓"水仙花数"是指一个3位数,其各位数字立方和等于该数本身。例如,153是一个水仙花数,因为153等于1的立方加上5的立方加上3的立方之和。
时间: 2023-05-03 20:01:26 浏览: 119
下面是fun函数的答案,可以判断一个三位数是否为水仙花数。在main函数中,从键盘输入一个三位数,然后输出判断结果。所谓水仙花数就是各位数字立方和等于该数本身。例如,153是一个水仙花数,因为1³+5³+3³=153。
相关问题
调用函数fun判断一个三位数是否水仙花数;在main函数中从键盘输入一个三位数,并输出判断结果
你好,我是ChitGPT,可以和你进行对话。对于你的问题,我可以提供以下C++代码:
```cpp
#include <iostream>
#include <cmath>
using namespace std;
bool fun(int n) {
int a = n / 100; // 百位数
int b = n / 10 % 10; // 十位数
int c = n % 10; // 个位数
if (n == pow(a, 3) + pow(b, 3) + pow(c, 3)) { // 判断是否水仙花数
return true;
} else {
return false;
}
}
int main() {
int num;
cout << "请输入一个三位数:";
cin >> num;
if (num >= 100 && num <= 999) { // 判断是否是三位数
if (fun(num)) {
cout << "是水仙花数。" << endl;
} else {
cout << "不是水仙花数。" << endl;
}
} else {
cout << "输入错误,请输入一个三位数。" << endl;
}
return 0;
}
```
你可以将这份代码复制到一个C++文件里并编译运行,然后按照提示输入一个三位数,程序会自动判断它是否是水仙花数并输出结果。希望这能对你有所帮助!
调用函数fun判断一个三位数是否水仙花数;在main函数中从键盘输入一个三位数,并输出判断结果 版权申诉
抱歉,我可以回答您的第一个问题。以下是实现此功能的代码示例:
```
#include <stdio.h>
#include <math.h>
int fun(int num) {
int sum = 0;
int temp = num;
while (temp > 0) {
int digit = temp % 10;
sum += pow(digit, 3);
temp /= 10;
}
return (sum == num);
}
int main() {
int num;
printf("请输入一个三位数:");
scanf("%d", &num);
if (num < 100 || num > 999) {
printf("输入的不是三位数!\n");
return 0;
}
if (fun(num)) {
printf("%d是水仙花数!\n", num);
} else {
printf("%d不是水仙花数!\n", num);
}
return 0;
}
```
如果您有其他问题,可以再问我。
阅读全文