Hallo,
die iterative Variante ist ja kein Problem, aber bei der Rekursion spuckt mir meine Methode immer etwas falsches aus:
Bei Methodenaufruf: primRek(597) kommt true heraus, obwohl es durch 3 teilbar ist. Wird eventuell die Variable j++ bei meinen rekursiven Aufruf nicht inkrementiert?
Danke für eure Ratschläge!
die iterative Variante ist ja kein Problem, aber bei der Rekursion spuckt mir meine Methode immer etwas falsches aus:
Code:
public static boolean primRek (int n){
int j = 2;
// trivialer Fall
if (n == 2) {
return true;
}
if (n % j == 0 ){
return false;
} else if( j >= Math.sqrt(n)) {
return primRek(n & j++);
}
return true;
}
Bei Methodenaufruf: primRek(597) kommt true heraus, obwohl es durch 3 teilbar ist. Wird eventuell die Variable j++ bei meinen rekursiven Aufruf nicht inkrementiert?
Danke für eure Ratschläge!