输出所有的“水仙花数”。所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身。 例如,153是一水仙花数,因为153=13+53+33用C➕➕写 具体代码
时间: 2024-10-22 12:18:18 浏览: 36
在C++中,你可以编写如下的代码来找出所有的水仙花数:
```cpp
#include <iostream>
using namespace std;
bool is narcissistic(int num) {
int sum = 0;
int temp = num;
while (temp > 0) {
int digit = temp % 10;
sum += pow(digit, 3);
temp /= 10;
}
return sum == num;
}
void findNarcissisticNumbers(int start, int end) {
for (int i = start; i <= end; ++i) {
if (is_narcissistic(i)) {
cout << i << " ";
}
}
}
int main() {
int lower_bound = 100;
int upper_bound = 999;
cout << "The Narcissistic numbers between " << lower_bound << " and " << upper_bound << " are: ";
findNarcissisticNumbers(lower_bound, upper_bound);
return 0;
}
```
这段代码首先定义了一个函数`is_narcissistic`用于检查一个数是否为水仙花数。然后,`findNarcissisticNumbers`函数遍历指定范围内的所有三位数并打印出水仙花数。在`main`函数中,我们设定查找范围从100到999。
当你运行这个程序,它会输出所有在这个范围内的水仙花数。比如153、370、371、407等都是水仙花数。
阅读全文