一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程找出1000以内的所有完数。

来源:互联网 发布:加工中心半径补偿编程 编辑:程序博客网 时间:2024/06/05 15:57

代码如下:

public class Prog9{    public static void main(String[] args){        int n = 10000;        compNumber(n);    }    //求完数    private static void compNumber(int n){        int count = 0;        System.out.println(n+"以内的完数:");        for(int i=1;i<n+1;i++){            int sum = 0;            for(int j=1;j<i/2+1;j++){                if((i%j)==0){                    sum += j;                    if(sum==i){                  System.out.print(i+" ");                  if((count++)%5==0)                    System.out.println();                }                }            }        }    }}

结果如下:

10000以内的完数:6 24 28 496 2016 8128 8190 
阅读全文
0 0
原创粉丝点击