int testc60()
{
int num = 2;
do {
int sum = 0, i = 1;
while (i < num / 2 + 1) //先对num处理,取当前数字的一半进行循环
{
if (num % i == 0) //判断当前数字能否可以被因子i整除
{
sum += i; //能整除的是因子,并累加求和
}i++;
}
if (num == sum) //判断num是否等于因子之和
{
cout << num << "的因子是:";
int j = 1;
while (j < num / 2 + 1) //循环计算因子
{
if (num % j == 0)
{
cout << j<<",";
}j++;
}
cout << endl;
}num++;
} while (num < 1001); //遍历num
return 0;
}
运行程序的效果图: