我有几个方法来计算任何mumber的最大的主要因素,但它不会编译,因为它说,我的投入是超出范围类型的数据类型来表示一个数
public class ProjectEuler3 {
public static void main(String[] args) {
System.out.println (findfactors(600851475143));
}
public static float findfactors(long n){
long[]factors=new long[1000];int nooffactor=0;
int c =0;
for(long i=2;i<n;i++){
if (findPrime(i)){
factors[c++]=i;
nooffactor++;}
}
return factors[nooffactor-1];
}
public static boolean findPrime(float n){
for(long i=2;i<n;i++){
if(n%i==0)
return false;
}
return true;
}
}
谢谢为你的答案 – logic101 2011-06-05 17:59:55