Wohl eher so:
|
Java Quellcode
|
1
2
3
4
5
6
7
8
9
10
11
|
boolean tester(int n) {
int counter = 2;
int n_halbe = n/2;
boolean value = true;
while((counter < n_halbe) && (value)) {
if((n % counter) == 0)
value = false;
counter++;
}
return value;
}
|
Wieso teilst du denn Counter durcfh 2. Das verkürzt die Schleife doch überhaupt nicht, eher im Gegenteil, sie läuft doppelt solange und du testest auch Werte die größer sind als n. WENN ÜBERHAUPT müsste es counter *2 heißen, aber aus Performancegründen hab ich die Berechnung eh aus der Schleife rausgenommen, damit sie nicht jedesmal gemacht werden muss, das würde bei der Mulitiplikation aber nicht gehen. Ich glaub den Typecast hättest du auch nicht gebraucht. Auch der Abbruch indem du counter hochsetzt ist etwas merkwürdig, bei Zählschleifen versuche ich die Zählvariable möglichst so zu lassen wie sie ist, dann schon lieber ein break, da sieht man das wenigstens sofort. Aber das braucht man beides nicht, wir haben ja eh eine Variable dafür (value)