Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
schule:klassen:2019:10abc:felder [2020/01/28 09:26] – [Aufgabe 2] martin | schule:klassen:2019:10abc:felder [2021/12/29 10:40] (aktuell) – Externe Bearbeitung 127.0.0.1 | ||
---|---|---|---|
Zeile 54: | Zeile 54: | ||
a) Deklariere ein Feld test mit 10 int-Werten und fülle es mit den Zweiterpotenzen 1, 2, 4, 8, 16, ... 512. Verwende dazu eine while- oder for-Schleife! \\ | a) Deklariere ein Feld test mit 10 int-Werten und fülle es mit den Zweiterpotenzen 1, 2, 4, 8, 16, ... 512. Verwende dazu eine while- oder for-Schleife! \\ | ||
b) Erweitere das Programm, so dass es die Summe aller Feldwerte berechnet. \\ | b) Erweitere das Programm, so dass es die Summe aller Feldwerte berechnet. \\ | ||
+ | |||
+ | |||
+ | ===== Sieb des Eratosthenes ===== | ||
+ | <code java> | ||
+ | |||
+ | int max = 1000; | ||
+ | // false bedeutet: Zahl ist gestrichen | ||
+ | boolean[] sieb = new boolean[max + 1]; | ||
+ | |||
+ | for(int i = 0; i < max + 1; i++) { | ||
+ | | ||
+ | } | ||
+ | |||
+ | int p = 2; | ||
+ | while(p < Math.sqrt(max)) { | ||
+ | |||
+ | // Vielfache von p streichen | ||
+ | | ||
+ | sieb[i] = false; | ||
+ | } | ||
+ | |||
+ | // nächste freie Zahl suchen: | ||
+ | int i = p + 1; | ||
+ | | ||
+ | | ||
+ | i++; | ||
+ | |||
+ | } | ||
+ | |||
+ | p = i; | ||
+ | |||
+ | } | ||
+ | |||
+ | |||
+ | // Primzahlen ausgeben: | ||
+ | for(int i = 2; i < max + 1; i++) { | ||
+ | | ||
+ | print(i + ", "); | ||
+ | } | ||
+ | } | ||
+ | |||
+ | </ | ||
+ | |||