Napisz program, w którym uruchamiane są trzy wątki. Pierwszy z nich wyświetla kolejne liczby pierwsze z przedziału 1,000,000 - 2,000,000, drugi z przedziału 2,000,000 - 3,000,000, a trzeci z przedziału 3,000,000 - 4,000,000.
Każdy z wątków powinien przerwać swoje działanie po znalezieniu dziesięciu liczb pierwszych z podanego przedziału.
Po znalezieniu kolejnej liczby pierwszej każdy z wątków wyświetla ją na ekranie. Przy każdej wyświetlanej liczbie powinna się pojawić informacja mówiąca o tym, który wątek ją wyświetlił.
Metoda main powinna zostać napisana tak, że po zakończeniu pracy wszystkich trzech wątków wyświetlana jest informacja o autorze programu.
/**
* @(#)W1.java
*
*
* @author
* @version 1.00 2014/1/26
*/
public class W1 extends Thread {
public static void main(String[] args) {
int b;
int a;
int n = 200000;
boolean[] numbersTable = new boolean[n+1];
for (a=0;a<10;a++){
for(int i = 1000000; i*i <= n; i++){
if (numbersTable[i] == true)
continue;
for (int j = 2 * i ; j <= n; j += i)
numbersTable[j] = true;
}
}
System.out.println("Liczby pierwsze z przedziału od 1000000 do " + n + ":");
for (int i = 1000000; i <= n; i++)
if (numbersTable[i] == false)
System.out.println(i);
}
}
Brakuje instrukcji która kazałaby wyświetlić 10 pierwszych znalezionych liczb i dodała do każdej z nich napis "wątek pierwszy"
Pomożecie? ;)