So langsam komm ich mir dumm vor, das ist zuviel Information in so kurzer Zeit.
Ich brauch wieder hilfe -.-
Es klappt alles ganz gut aber jetzt wollen sie mir zeigen was JUnit macht und ich soll eine Methode erstellen die nur Prüft ob es eine Primzahl ist ein einer Schleife. Ich versteh gar nichts mehr.
Mir wurde schon der Satz:
boolean istPrim=istPrimzahl(testZahl);
Rein geschrieben und ich weiss nur das ich jetzt ganz unten damit eine Methode erstellen soll. die Methode soll nichts ausgeben sondern nur prüfen. Ich hab echt den überblick verloren.
So siehts aus:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class PrimzahlMitBereich {
private static Object testZahl;
public static void main(String[] args) {
int untereGrenze = PrüfZahl1();
int obereGrenze = PrüfZahl2(untereGrenze);
System.out.print("Die Primzahlen im eingegeben Bereich lauten: ");
if (untereGrenze <= 1) {
untereGrenze = 2;
}
if (untereGrenze == 2) {
untereGrenze++;
}
int testZahl = untereGrenze;
if ((testZahl % 2) == 0) {
testZahl++;
}
for (; testZahl <= obereGrenze; testZahl = testZahl + 2) {
int divisor = 3;
int rest = 1;
boolean istPrim=istPrimzahl(testZahl);
if(istPrim) {
System.out.print(testZahl + " ");
}
while ((rest != 0) && (divisor < testZahl / 2)) {
rest = testZahl % divisor;
divisor = divisor + 2;
}
if (rest != 0) {
System.out.print(testZahl + " ");
}
}
}
static int PrüfZahl1() {
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
boolean zahlgueltig = false;
int zahl = 0;
do {
System.out.print("Bitte geben Sie die erste Zahl ein:");
try {
zahl = Integer.parseInt(in.readLine());
if (zahl > 0) {
zahlgueltig = true;
} else {
System.out.println("Fehler: Sie müssen eine positive Zahl eingeben.");
}
} catch (NumberFormatException e) {
System.out.println("Fehler: Sie haben keine Zahl eingegeben.");
} catch (IOException e) {
System.out.println("Ein IO Fehler ist aufgetreten");
}
} while (!zahlgueltig);
return zahl;
}
static int PrüfZahl2(int untereGrenze) {
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
boolean zahlgueltig = false;
int zahl = 0;
do {
System.out.print("Bitte geben Sie die zweite Zahl ein:");
try {
zahl = Integer.parseInt(in.readLine());
if (zahl > 0 && zahl > untereGrenze) {
zahlgueltig = true;
} else {
System.out.println("Fehler: Sie müssen eine positive Zahl eingeben, die größer ist als die erste.");
}
} catch (NumberFormatException e) {
System.out.println("Fehler: Sie haben keine Zahl eingegeben.");
} catch (IOException e) {
System.out.println("Ein IO Fehler ist aufgetreten");
}
} while (!zahlgueltig);
return zahl;
}
}
Hilfe und eine Erklärung wären echt nett

Achso und diese neue Schleife soll natürlich die gleiche Berechnung nutzen die ja oben schon steht.