types:arrays:eratosthenes:loesung2
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
— | types:arrays:eratosthenes:loesung2 [2024/08/31 10:03] (aktuell) – angelegt - Externe Bearbeitung 127.0.0.1 | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
+ | ===== Lösung zu Aufgabe 3 (Zusatzaufgaben): | ||
+ | Schreibe ein Programm, das die Primzahlen bis 100 000 mit Hilfe des Sies des Eratosthenes ermittelt und ausgibt! \\ \\ | ||
+ | Erweitere das Programm so, | ||
+ | * a) dass der Benutzer zu Beginn eingeben kann, bis zu welcher Obergrenze die Primzahlen gesucht werden sollen. | ||
+ | * b) dass es nach der Ermittlung der Primzahlen alle Primzahlzwillinge im Feld sucht und ausgibt. | ||
+ | < | ||
+ | |||
+ | <div class=" | ||
+ | |||
+ | <script type=" | ||
+ | int anzahl = Input.readInt(" | ||
+ | |||
+ | boolean[] gestrichen = new boolean[anzahl + 1]; | ||
+ | // ... sind am Anfang alle mit false initialisiert! | ||
+ | // gestrichen[0] wird nicht benutzt! | ||
+ | |||
+ | // 1 streichen: | ||
+ | gestrichen[1] = true; | ||
+ | |||
+ | int p = 2; | ||
+ | while(p <= Math.sqrt(anzahl)) { | ||
+ | // Vielfache streichen: | ||
+ | | ||
+ | gestrichen[zuStreichen] = true; | ||
+ | } | ||
+ | |||
+ | // nächste nicht-gestrichene suchen: | ||
+ | p++; | ||
+ | | ||
+ | p++; | ||
+ | } | ||
+ | |||
+ | } | ||
+ | |||
+ | // Ausgabe: | ||
+ | for(int i = 1; i <= anzahl; i++) { | ||
+ | | ||
+ | println(i); | ||
+ | } | ||
+ | } | ||
+ | |||
+ | // Ausgabe der Primzahlzwillinge: | ||
+ | for(int i = 3; i <= anzahl - 2; i++) { | ||
+ | | ||
+ | println(" | ||
+ | } | ||
+ | } | ||
+ | |||
+ | </ | ||
+ | |||
+ | </ | ||
+ | |||
+ | </ |