wenn gefunden, ein Prime-Checker in Java, die diese Methode verwendet. Kann jemand erklären, warum die for-Schleife zur Quadratwurzel der gesuchten Primzahl geht? - Gibt es einen effizienteren Weg, dies zu tun? - Vielen Dank!Java Prime Checker
public static boolean isPrime(int p){
if(p % 2 == 0 || p < 2){
return false;
}
else {
System.out.println("Sqare: " + (int)Math.sqrt(p));
for(int i = 3; i <= (int)Math.sqrt(p); i = i+2){
if(p % i == 0){
return false;
}
}
}
return true;
}
Mögliches Duplikat von [Warum überprüfen wir bis zur Quadratwurzel einer Primzahl, um festzustellen, ob es sich um Primzahl handelt?] (Http://stackoverflow.com/questions/5811151/why-do-we-check-up -zu-der-Wurzel-einer-Primzahl-zu-bestimmen-wenn-es-ist-pr) – rafid059
Überprüfen Sie auch diese: http://stackoverflow.com/questions/1801391/what- Ist-der-beste-Algorithmus-zum-Prüfen-wenn-eine-Nummer-ist-Prime http://stackoverflow.com/questions/453793/which-is-the-fastest-algorithm-to-find-prime-numbers – rafid059
Versuchen Sie, den Code zu trocknen, wenn Sie den Code verstehen möchten. Nimm verschiedene Zahlen und versuche, darauf zu laufen. Oder versuchen Sie es im Debugging-Environment. –