求四位数水仙花数c++
时间: 2024-09-10 14:00:23 浏览: 79
水仙花数( narcissistic number 或 pluperfect digital invariant),也称为自恋数,是指一个三位数(包括三位数本身),其各位数字立方之和等于该数本身。例如,153就是一位水仙花数,因为 1^3 + 5^3 + 3^3 = 153。
在C++中,你可以编写一个简单的程序来检查一个四位数是否为水仙花数。下面是一个基本的示例:
```cpp
#include <iostream>
#include <cmath>
bool isNarcissisticNumber(int num) {
// 将四位数分解成每一位
int hundreds = num / 100;
int tens = (num % 100) / 10;
int ones = num % 10;
// 计算每个位的立方和并与原数比较
int sumOfCubes = std::pow(hundreds, 3) + std::pow(tens, 3) + std::pow(ones, 3);
return sumOfCubes == num;
}
int main() {
for(int i = 100; i <= 9999; ++i) { // 遍历四位数范围
if(isNarcissisticNumber(i)) {
std::cout << i << " 是一个水仙花数.\n";
}
}
return 0;
}
```
阅读全文