练习9

来源:互联网 发布:产品经理数据来源 编辑:程序博客网 时间:2024/05/21 07:48

题目:一个数如果恰好等于它的因子之和,则这个数就称为完数,例如6=1+2+3,找出1000之内的所有完数。

分析:这个题目主要是要找出一个数的因子。将数字i除以从1到i的数,如果能整除,说明被除数是i的因子。将i的所有因子相加,如果结果与i相等,则说明i是一个完数。

代码:
public class Practice9 {public static void main(String[] args){System.out.println("1000之内的完数有:");for(int i = 1; i < 1000; i++){int s = 0;  //定义判断是否与i相等的sfor(int j = 1; j < i; j++){if(i % j == 0){  //将i分解因子s = s + j;  //求和}}if(i == s){System.out.print(i + " ");}}}}

结果:
原创粉丝点击