/*
*Copyright (c)2014,烟台大学计算机与控制工程学院
*All rights reserved.
*文件名称:C++15.cpp
*作 者:王一锟
*完成日期:2014年11月2日
*版 本 号:v1.0
*
*问题描述:找出1000以内所有的完数
*输出描述:1000以内所有的完数
*/
#include <iostream>
#include<Cmath>
using namespace std;
int main()
{
int num,s,div;
cout<<"2-1000之间的完数有:";
for(num=2; num<=1000; num++)
{
s=1;
for(div=2; div<sprt(num); div++)
if(num%div==0) s+=(div+num/div);
if(num==s)
cout<<num<<" ";
}
cout<<endl;
return 0;
}
输出结果:
开始是理解错误,把div<sprt(num)错输成了div<num/2,运行错误后百思不得其解,询问小伙伴后才知道要开根号的。。。