编程】C++编程找出n以内《含)的所有完数。 {要求了一个数如果怡好等手它的因子之和,这个数就称为完数。 例如:6的因子为1、2、3。而6=1+2+3,因此6是完数。 输出格式参见样张 (每行一个完数和它的因子〕 【特别提示】 (1)本程序中的循环结构一律使用for语句实现; (2)使用己定义的变量,不再另外定义。以6=1+2+3打印
时间: 2024-01-22 13:21:15 浏览: 25
以下是C++代码实现:
```cpp
#include <iostream>
using namespace std;
int main() {
int n;
cout << "请输入一个正整数n: ";
cin >> n;
for (int i = 1; i <= n; i++) {
int sum = 0;
for (int j = 1; j < i; j++) {
if (i % j == 0) {
sum += j;
}
}
if (sum == i) {
cout << i << "=";
for (int j = 1; j < i; j++) {
if (i % j == 0) {
cout << j;
if (j != i - 1) {
cout << "+";
}
}
}
cout << endl;
}
}
return 0;
}
```
运行程序后,输入一个正整数n,程序会输出该数以内所有的完数及其因子。例如,当输入n为6时,程序输出:
```
请输入一个正整数n: 6
6=1+2+3
```
说明6是一个完数,其因子为1、2、3,且1+2+3=6。