Erste Schritte Testen, ob eine Zahl eine Primzahl ist

isuckatjava

Neues Mitglied
Hallo,
wir müssen ein kleines Script schreiben, in dem wir bestimmen sollen, ob eine gegebene Zahl eine Primzahl ist (mittels isPrime). Leider hab ich keine Ahnung, wie das geht.
Wäre nett, wenn mir da jemand helfen könnte. Außerdem wäre ein kleines GUI gut, was nach der Zahl fragt, dann ja oder nein sagt und dann fragt, ob man den Vorgang wiederholen oder verlassen möchte.
Danke
 
wir müssen ein kleines Script schreiben, in dem wir bestimmen sollen, ob eine gegebene Zahl eine Primzahl ist (mittels isPrime). Leider hab ich keine Ahnung, wie das geht.
Fang doch mal damit an zu untersuchen was an einer Primzahl anders ist als an den anderen Zahlen. Damit bekommst Du dann schon mal eine Idee wie Du das überprüfen könntest.

Außerdem wäre ein kleines GUI gut, was nach der Zahl fragt, dann ja oder nein sagt und dann fragt, ob man den Vorgang wiederholen oder verlassen möchte.
Ja, das wäre schön! Das musst Du dann einfach nur noch programmieren. 😉
 
Java:
public static boolean isPrime(int n) {
   return !new String(new char[n]).matches(".?|(..+?)\\1+");
}
Das gui dazu musst du nun selber machen 🙂
 
Du könntest in einer Schleife alle Teiler bis zur Wurzel der zu prüfenden Zahl auf Teilbarkeit testen (mit dem Modulo Operator %) , wenn keine der Zahlen teilt , ist es eine Primzahl.
Z.B so:
Java:
public static boolean isPrime(int n) { // Zahl die getestet werden soll
        for (int t=2; t<= Math.sqrt(n); t++) { // alle Teiler
            if(n%t == 0)
                return false;    // keine Primzahl      
        }
            return true; // Primzahl
        }
 
Na ja, eine Primzahl ist nur durch eins oder sich selbst teilbar.
Das ist aber nur die halbe Wahrheit. Entscheident ist, dass eine Primzahl exakt zwei natürliche Teiler besitzt. Deshalb reicht
Genau das soll die Methode isPrime() eben überprüfen.
nicht ganz aus.

1 ist also eine Primzahl?
Und was ist mit negativen Zahlen?
 

Zurück
Oben