JAva基礎アルゴリズム学習の完全数の解
904 ワード
この文章は完全数の解を言って、ここで私が言いたいのはこのコードの構想で、この機能を実現するために、本当に難しくなくて、完全数、すべての因子が加算してこの数に等しいので、このような数は完全数と呼ばれて、このコードの中の思想は1つの範囲内で、毎回1つの数を遍歴して、それから2回この数を保存して、一つは因子を求めるために用いられ、もう一つは最後と0を求めるかどうかで、私が初めて考えたなら、思いもよらなかったはずだ.
コード:
コード:
package com.jk.perfectdemo;
import java.util.Arrays;
/**
*
* @author jk, , , , ,
*
*/
public class test {
/**
* @param args
*/
public static void main(String[] args) {
// 5000
perfectNum(5000);
}
private static void perfectNum(int rangge) {
long[] p=new long[300];
long i,j,sum,num;
int k,count;
//
for(i=0;i<rangge;i++){
count=0;
num=i;
sum=num;
//
for(j=1;j<num;j++){
if(num%j==0){
p[count++]=j;
sum=sum-j;
}
}
if(sum==0){
System.out.println(num+"="+Arrays.toString(p));
}
}
}
}