Наибольшее простое число 600851475143JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Наибольшее простое число 600851475143

Сообщение Anonymous »

Мне нужны предложения о том, как сделать этот код работоспособным. Например, с этим номером: 600851475143. Это работает для меньших чисел. Любые предложения по моему коду в целом будут более чем приветствоваться. В качестве примечания: я понимаю, что политика Project Euler заключается в том, чтобы не делиться кодом для решения своих проблем, и поэтому я просто хочу, чтобы меня подтолкнули в правильном направлении, и не хочу никаких прямых ответов. Спасибо.

Код: Выделить всё

import java.util.List;
import java.util.ArrayList;
public class prime {

public static List factor2(long n){
List list = new ArrayList();

for (long a = 1; a < n; a++){
for (long b = n; b>1; b--){
if (a*b==n){
list.add(a);
list.add(b);
a++;
b--;
}
else{
b--;
}
}

}

return list;
}
public static List prime (long n){
Listlist = factor2(n);
ListlistPrime = new ArrayList();
for (long x : list){
if (factor2(x).size()==2){
listPrime.add(x);
}
}
return listPrime;
}

public static long largestPrime (long n){
long largest = 1;

for (long x : prime(n)){
if (x>largest){
largest = x;
}
}
return largest;
}

public static void main (String[] args){
System.out.println(largestPrime(6));
}


Подробнее здесь: https://stackoverflow.com/questions/572 ... 0851475143
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»