/*
*Copyright (c) 2014,烟台大学计算机学院
*All rights reserved.
*文件名称 :test.cpp
*作 者 :韩娟
*完成日期 :2014年11月3日
*版 本 号 :v1.0
*
*问题描述 :一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如:6=1+2+3,再如8的因子1+2+4=7,8不是完数。编程找出1000以内的所有完数。
*输入描述 :略
*程序输出 :1000内所有完数
*/
#include <iostream>
using namespace std;
int main()
{
int i,j,sum;
cout<<"1000以内的完数有:"<<endl;
for(i=2; i<=1000; ++i)
{
sum=0;
for(j=1; j<=i/2; ++j)
if(i%j==0)
sum=sum+j;
if(sum==i)
cout<<sum<<endl;
}
return 0;
}
知识点总结 :
又是循环语句的用法,抓住要比较的东西和要跳出的东西。
学习心得 :
对于最后一个for语句总是有些模模糊糊的,不太明白为什么要有这个for语句,在组员的帮助下才慢慢明白。