Ich schrieb den Code in JAVA und es scheint in Eclipse gut zu funktionieren. Aber ich erhalte einen Fehler, wenn ich den Code in SPOJ (Laufzeitfehler (NZEC)) einreiche.PRIME1 - Prime Generator Java
Könnte jemand bitte mir dabei helfen.
Hier ist, was ich bisher versucht:
class Main {
public static void main(String[] args) throws java.lang.Exception {
Scanner n1 = new Scanner(System.in);
Scanner n3 = new Scanner(System.in);
int n2 = n1.nextInt();
int[][] n4 = new int[n2][2];
for (int i = 0; i < n2; i++) {
String[] s2 = n3.nextLine().split(" ");
for (int j = 0; j < 2; j++) {
n4[i][j] = Integer.parseInt(s2[j]);
}
}
for (int i = 0; i < n2; i++){
for(int j=n4[i][0];j<=n4[i][1];j++){
if(isPrimeNumber(j)){
System.out.println(j);
}
}
System.out.println();
}
}
public static boolean isPrimeNumber(int number) {
if (number == 2 || number == 3) {
return true;
}
if (number % 2 == 0) {
return false;
}
int sqrt = (int) Math.sqrt(number) + 1;
for (int i = 3; i < sqrt; i += 2) {
if (number % i == 0) {
return false;
}
}
return true;
}
}
Gibt es Gründe, zu verwenden 2 Scanner? Du hast normalerweise mehr als genug mit nur einem .... –
Hi..ich habe es mit nur einem Scanner versucht. Aber irgendwie funktioniert der Code nicht, wenn ich .nextLine() und .nextInt() Funktionen auf dem gleichen Scanner verwende. Ich bin neu in diesem Bereich. Bitte lass es mich wissen, wenn ich es falsch benutze. – avg998877