arrays:aufgabe7loesung:start
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
arrays:aufgabe7loesung:start [2025/03/23 08:50] – angelegt Martin Pabst | arrays:aufgabe7loesung:start [2025/03/23 09:01] (aktuell) – Martin Pabst | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
===== Lösung zu Aufgabe 7: Ausgabe aller Primzahlzwillinge ===== | ===== Lösung zu Aufgabe 7: Ausgabe aller Primzahlzwillinge ===== | ||
+ | <WRAP center round tip 80%> | ||
+ | **Bemerkungen zur Lösung unten:** | ||
+ | * ''&&'' | ||
+ | * '' | ||
+ | * '' | ||
+ | * Zeile 26 im Programm unten könnte man noch eleganter schreiben: | ||
+ | <code java> | ||
+ | if(!istGestrichen[i] && !istGestrichen[i + 2]) | ||
+ | </ | ||
+ | </ | ||
< | < | ||
Zeile 8: | Zeile 18: | ||
int anzahl = 100000; | int anzahl = 100000; | ||
- | boolean[] | + | boolean[] |
- | gestrichen[0] = true; | + | istGestrichen[0] = true; |
- | gestrichen[1] = true; | + | istGestrichen[1] = true; |
- | for(int i = 2; i <= anzahl; i++) { | + | for (int i = 2; i <= anzahl; i++) { |
- | gestrichen[i] = false; | + | istGestrichen[i] = false; |
} | } | ||
int nächstePrimzahl = 2; | int nächstePrimzahl = 2; | ||
- | while(nächstePrimzahl <= Math.sqrt(anzahl)) { | + | while (nächstePrimzahl <= Math.sqrt(anzahl)) { |
- | // Alle Vielfachen von nächstePrimzahl streichen: | + | for (int i = nächstePrimzahl * 2; i <= anzahl; i = i + nächstePrimzahl) { |
- | | + | |
- | | + | |
- | | + | |
} | } | ||
// nächste Primzahl finden | // nächste Primzahl finden | ||
| | ||
- | | + | while (istGestrichen[nächstePrimzahl]) { |
nächstePrimzahl++; | nächstePrimzahl++; | ||
} | } | ||
} | } | ||
- | // Ausgabe der Primzahlen | + | // Ausgabe der Primzahlzwillinge |
- | int spalte = 0; | + | for (int i = 2; i <= anzahl; i++) { |
- | for(int i = 2; i <= anzahl; i++) { | + | if(istGestrichen[i] == false && istGestrichen[i + 2] == false) { |
- | if(gestrichen[i] == false) { | + | print(" |
- | print(i + ", "); | + | |
- | spalte++; | + | |
- | if(spalte == 5) { // Zeilenumbruch nach jeweils 5 Spalten | + | |
- | | + | |
- | | + | |
- | } | + | |
} | } | ||
} | } |
arrays/aufgabe7loesung/start.1742719855.txt.gz · Zuletzt geändert: 2025/03/23 08:50 von Martin Pabst