1 |
Erstelle eine neue Feldvariable mit 1000 Plätzen, die von 0 bis 999 durchnummeriert sind. Standardmäßig werden beim Typ int[] alle Einträge auf 0 gesetzt |
2 |
Durchlaufe mit i alle Werte von 2 bis zur halben Anzahl. Darüber hinaus muss man nicht gehen, da Vielfache der halben Anzahl außerhalb des zu untersuchenden Bereichs liegen. |
3 |
Trete bei der aktuelle Zahl nur in Aktion, wenn dort noch eine 0 steht, d. h. sie ist noch nicht gestrichen |
4 |
Durchlaufe alle Vielfache einer Zahl, also beispielsweise für die 2 die Werte 4, 6, 8, 10 …, solange das Vielfache größer der halben Anzahl kleiner als die maximale zu untersuchende Zahl anzahl ist |
5 |
"Streiche" das entsprechende Vielfache. Das gelingt, indem wir den zum aktuellen Vielfachen gehörigen Eintrag der Feldvariable auf "1" setzen (zur Erinnerung: der Eintrag "0" bedeutet, dass die Zahl noch nicht gestrichen wurde) |
6 |
Gehe am Ende alle Einträge durch und gib nur die Werte aus, die noch nicht gestrichen wurden, also in deren zugehörigen Einträgen der Feldvariable noch eine "0" steht |
<1> Erstelle eine neue Feldvariable mit 1000 Plätzen, die von 0 bis 999 durchnummeriert sind. Standardmäßig werden beim Typ `int[]` alle Einträge auf 0 gesetzt
<2> Durchlaufe mit `i` alle Werte von 2 bis zur halben Anzahl. Darüber hinaus muss man nicht gehen, da Vielfache der halben Anzahl außerhalb des zu untersuchenden Bereichs liegen.
<3> Trete bei der aktuelle Zahl nur in Aktion, wenn dort noch eine 0 steht, d. h. sie ist noch nicht gestrichen
<4> Durchlaufe alle Vielfache einer Zahl, also beispielsweise für die 2 die Werte 4, 6, 8, 10 ..., solange das Vielfache größer der halben Anzahl kleiner als die maximale zu untersuchende Zahl `anzahl` ist
<5> "Streiche" das entsprechende Vielfache. Das gelingt, indem wir den zum aktuellen Vielfachen gehörigen Eintrag der Feldvariable auf "1" setzen (zur Erinnerung: der Eintrag "0" bedeutet, dass die Zahl noch nicht gestrichen wurde)
<6> Gehe am Ende alle Einträge durch und gib nur die Werte aus, die noch nicht gestrichen wurden, also in deren zugehörigen Einträgen der Feldvariable noch eine "0" steht