1、编写程序找出所有水仙花数(一个三位数的每为数字的立方和等于该三位数称为水 仙花数);用c++
时间: 2024-09-21 17:08:17 浏览: 49
在C++中,编写程序找出所有的水仙花数可以分为几个步骤:
1. 定义函数:首先创建一个函数,它接受一个整数作为输入,并检查这个数是否为水仙花数。
```cpp
bool is narcissistic(int number) {
int digits[3];
int sum = 0;
// 将三位数分解成各个位上的数字
while (number > 0) {
digits[2] = number % 10;
sum += digits[2] * digits[2] * digits[2]; // 立方和
number /= 10;
}
// 检查原数和立方和是否相等
return sum == number;
}
```
2. 循环遍历:从最小的三位数900开始,递减到最大的三位数999,对每个数调用`is Narcissistic`函数进行判断。
```cpp
void findNarcissisticNumbers() {
for (int i = 999; i >= 100; i--) {
if (is narcissistic(i)) {
std::cout << i << " ";
}
}
}
```
3. 主函数:将上述函数放入主函数`main()`中,并运行整个查找过程。
```cpp
int main() {
findNarcissisticNumbers();
return 0;
}
```
当你运行此程序时,它会输出所有水仙花数,例如:153, 370, 371, 407.
阅读全文