Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung | ||
faecher:informatik:oberstufe:java:algorithmen:arrays:definition:start [09.10.2024 07:08] – [Zugriff auf Array-Elemente] Frank Schiebel | faecher:informatik:oberstufe:java:algorithmen:arrays:definition:start [09.10.2024 18:41] (aktuell) – [Vogelbeobachtung] Frank Schiebel | ||
---|---|---|---|
Zeile 47: | Zeile 47: | ||
((Java verfügt auch über Klassen, mit denen man Objektlisten und Arrays effizienter verwalten kann, fürs Erste begnügen wir uns mal mit dem Weg "zu Fuß" | ((Java verfügt auch über Klassen, mit denen man Objektlisten und Arrays effizienter verwalten kann, fürs Erste begnügen wir uns mal mit dem Weg "zu Fuß" | ||
- | |||
- | ---- | ||
- | {{: | ||
- | === (A1) === | ||
- | Passe das folgende [[https:// | ||
- | |||
===== Zugriff auf Array-Elemente ===== | ===== Zugriff auf Array-Elemente ===== | ||
Zeile 73: | Zeile 67: | ||
zahlen[4] = 78; | zahlen[4] = 78; | ||
</ | </ | ||
- | <callout icon=" | ||
- | Erweitere das Programm aus (A1) so, dass für alle Elemente des Arrays eine Zeile wie die folgende ausgegeben wird: | + | Der Zugriff auf einen Index, der außerhalb der gültigen Indizes des Arrays liegt, führt zu einer '' |
- | < | + | |
- | Das Array-Element mit dem Index 0 hat den Wert 11 | + | ==== Alle Array-Elemente sequentiell verarbeiten ==== |
- | Das Array-Element mit dem Index 1 ... | + | |
- | Das Array-Element mit dem Index 2 ... | + | Häufig möchte man alle Elemente eines Array der Reihe nach anschauen und möglichweise etwas mit den gespeichert Werten machen, man spricht davon, dass man "über das Array iteriert" |
+ | |||
+ | Hier bieten sich zunächst **zwei Möglichkeiten** an: | ||
+ | |||
+ | Wenn man die volle Kontrolle haben möchte über welche | ||
+ | |||
+ | < | ||
+ | char[] vowels = { ' | ||
+ | |||
+ | for (int i = 0; i < 3; i++) { | ||
+ | // Output the vowel | ||
+ | System.out.print(i + "::" | ||
+ | } | ||
+ | |||
+ | // 0::a 1::e 2::i | ||
</ | </ | ||
- | Verwende dazu eine [[..:..:..:sprachelemente:for-schleife:start|Zählschleife | + | Um ein Array auf diese Weise vollständig zu durchlaufen, |
- | </ | + | |
- | ==== Aufgabe 3 ==== | + | <code java> |
+ | for (int i = 0; i < meinArray.length; | ||
+ | ... | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | Der Umstand, dass ein Array auch eine Java-" | ||
+ | |||
+ | <code java> | ||
+ | char[] vowels = { ' | ||
+ | |||
+ | for(char vowel: vowels) { | ||
+ | // Output the vowel | ||
+ | System.out.print(vowel); | ||
+ | } | ||
+ | |||
+ | // => aeiou | ||
+ | </ | ||
+ | |||
+ | ===== Vogelbeobachtung ===== | ||
+ | ((Die Übungen zur Vogelbeobachtung sind stark an die Vorlage " | ||
+ | https:// | ||
+ | {{ :faecher: | ||
+ | Du bist ein begeisterter Vogelbeobachter und führst Buch darüber, wie viele Vögel in den letzten sieben Tagen deinen Garten besucht haben. | ||
+ | |||
+ | Die Zahl der beobachteten Vögel speicherst du in einem Array, ein befreundeter Programmierer hat dir bereits eine Codevorlage zur Verfügung gestellt, du findest sie hier: https:// | ||
+ | |||
+ | ---- | ||
+ | {{:aufgabe.png? | ||
+ | === (A1) === | ||
+ | |||
+ | Passe die Methode '' | ||
+ | |||
+ | ^ Vor 6 Tagen (Sa) ^ Vor 5 Tagen (So) ^ Vor 4 Tagen (Mo) ^ Vor 3 Tagen (Di) ^ Vorgestern (Mi) ^ Gestern (Do) ^ Heute (Fr) ^ | ||
+ | | 12 | 7 | ||
+ | |||
+ | Mache dir klar, dass die Methode als Rückgabetyp tatsächlich ein Array aus Zahlen festlegt. | ||
+ | |||
+ | :!: Für die weiteren Aufgaben gilt, dass das Array '' | ||
+ | |||
+ | ---- | ||
+ | {{: | ||
+ | === (A2) === | ||
+ | |||
+ | Implementiere die Methode '' | ||
+ | |||
+ | ---- | ||
+ | {{: | ||
+ | === (A3) === | ||
+ | Implementiere die Methode '' | ||
+ | |||
+ | ---- | ||
+ | {{: | ||
+ | === (A4) === | ||
+ | |||
+ | Implementiere die Methode '' | ||
+ | |||
+ | ---- | ||
+ | {{: | ||
+ | === (A5) === | ||
+ | |||
+ | An manchen Tagen ist mehr los als an anderen. Ein " | ||
+ | |||
+ | |||
+ | ---- | ||
+ | {{: | ||
+ | === (A6) === | ||
+ | Erweitere das die Klasse um eine Methode '' | ||
+ | < | ||
+ | Am Tag mit dem Index 0 wurden 12 Vögel beobachtet. | ||
+ | Am Tag mit dem Index 1 wurden 7 Vögel beobachtet. | ||
+ | Am Tag mit dem Index 2 wurden 0 Vögel beobachtet. | ||
+ | | ||
+ | </ | ||
- | Schreibe | + | Verwende dazu einmal |
- | ==== Aufgabe 4 ==== | + | ===== Dateien ===== |
- | Verändere im Schleifenkopf der for-Schleife aus Aufgabe 2 den Vergleichsoperator, | ||
- | ==== Aufgabe 5 ==== | ||
- | Erzeuge ein Array vom Datentyp String, das die Wochentage enthält. Lasse ebenfalls direkt bei der Instanziierung auf der Konsole die Länge des Arrays ausgeben. Beim Aufrufen von printArray() sollen nun auch die Wochentage ausgegeben werden. | ||
{{simplefilelist> | {{simplefilelist> |