Цитата с
баша: ххх: Вау! Я тут случайно обнаружил, что сумма всех простых чисел меньших миллиона является простым числом!
Прочитав это я усомнился ... никто дже не гарантирует что это правда и решил проверить.
Написал маленькую программу и нашел все простые числа меньшие миллиона (78498 штуки). Сложил их и получил число 37,550,402,023.
Проверил его на простоту - блин, действительно простое ... вот и спрашивается как он мог "случайно" об этом узнать?
Тем более что сумма первых 500 простых чисел (последнее - 3571) делится на 31.
package org.lab13.primenumbers;
import java.util.ArrayList;
import java.util.List;
public class Summ1
{
private static int getDivision(long number, List listSimples)
{
int i = 0;
while (i < listSimples.size())
{
if (number % listSimples.get(i) == 0)//Если остаток от деления равен 0, то число - составное
return listSimples.get(i);
else
i++;//Пока еще простое
}
return 0;
}
public static void main(String[] args)
{
List list = new ArrayList(7000000);
long summ = 0L;
int number = 1;
while (number < 1000000)
{
number++;
if (getDivision(number, list) <= 1)
{
list.add(number);
System.out.printf("%7d = %10d\n", list.size(), number);
summ = summ + number;
}
}
System.out.printf("Summ = %10d\n", summ);
int division = getDivision(summ, list);
if (division > 1)
System.out.println("Делитель = " + division);
else
System.out.printf("Действительно простое!\n");
}
}P.S.
Знал бы как пользоваться нашим расказчиком - использовал бы его :(.