Java:
package tezt;
public class Mystery {
public static void main (String [] args)
{
boolean passt;
int z=0;
for (int i=2; i<100; i++)
{
passt=check(i);
if (passt)
{
++z;
//System.out.println(z+". "+i);
}
}
}
public static boolean check (int x)
{
for (int j=2; j<x; j++)
{
int t=x%j;
if (t==0)
{
return false;
}
}
return true;
}
}
Hallo
Jemand aus dem Forum hat dieses kleine Programm hier geschrieben. Zuallererst möchte ich erstmal meine Gedanken aufschreiben^^
1. boolean initialisierung u. deklarierung
2. int z ist quasi ein counter der 1.,2.,3. usw. angibt
3. Die erste for-Schleife dient nur zum hochzälen der Werte von i und testet ob diese "passen" oder nicht.
Ich denke bis hierhin habe ich es noch einigermaßen verstanden.
Dann die 2. for-schleife.
Von der versthe ich den Sinn nicht ganz denn müssten j und x nicht immer gleich groß sein? Denn i wird immer um 1 erhöht und x ja dann auch. und j wird ja auch in jedem Durchgang um 1 erhöht.
Ich hoffe man versteht mich^^
Ausserdem bekomme ich beim ausgeben von j (in meinen Augen) komische Werte raus..
Java:
for (int j=2; j<x; j++)
{
System.out.println(j);
int t=x%j;
if (t==0)
{
return false;
}
2 / Müsste aber nicht j immer um 1 höher sein, da j inkrementiert wird?
2
2
3
4
2
2
3
4
5
6
2
Wäre froh, wenn mir jemand diese Ausgabe erklären könnte.
Mit freundlichen Grüßen,
xZitrus
Zuletzt bearbeitet: