使用pow函数判断水仙花数
时间: 2023-12-31 11:04:35 浏览: 81
JS判断一个数是否是水仙花数
水仙花数是指一个n位数(n≥3),它的每个位上的数字的n次方之和等于它本身。我们可以使用pow函数来计算每个位上的数字的n次方,然后将它们相加,最后判断和是否等于原数即可。
以下是使用pow函数判断水仙花数的示例代码:
```c++
#include <iostream>
#include <cmath>
using namespace std;
int main() {
int n, num, sum = 0;
cin >> n;
num = pow(10, n - 1); // 计算n位数的最小值
while (num < pow(10, n)) {
int temp = num;
while (temp > 0) {
int digit = temp % 10;
sum += pow(digit, n);
temp /= 10;
}
if (sum == num) {
cout << num << "是水仙花数" << endl;
}
num++;
sum = 0;
}
return 0;
}
```
在该代码中,我们首先输入位数n,然后计算n位数的最小值num。接着,我们使用两个嵌套的while循环来遍历所有n位数,计算每个位上的数字的n次方之和,并判断是否等于原数。如果是水仙花数,则输出结果。最后,我们将num加1,重置sum为0,继续遍历下一个数。
阅读全文