Wiki: Mathe und Info

Unterrichtsmaterialien für Mathematik und Informatik

Benutzer-Werkzeuge

Webseiten-Werkzeuge


info:sek-ii:e2:java-grundlagen:l11-arrays

Lektion 11: Arrays

In der letzten Lektion habt ihr Strings näher kennen gelernt. Strings sind im Endeffekt eine Liste von einzelnen Zeichen, die zusammengenommen einen Text ergeben. Heute betrachten wir weitere Listen, die nicht nur Zeichen beinhalten können: Die sogenannten Arrays.

Fachkonzept Array

Lest euch das Fachkonzept: Arrays durch und beantwortet folgende Fragen:

  • Was ist ein Array?
  • Welche Arten von Daten können in Arrays gespeichert werden?
  • Wie werden Daten in Arrays gespeichert? Wie werden sie abgerufen?

Übung 1

  1. Erstellt für die Datensätze unten jeweils eine Java-Datei mit Main-Methode nach der Vorlage rechts.
  2. Erstellt jeweils ein Array, in dem ihr die Daten des entsprechenden Datensatzes speichern könnt.
    • Wie habt ihr jeweils den Index gewählt?
    • Welche Array-Position steht für welchen Eintrag?
  3. Schreibt Code für die Ausgabe der Werte.
public class ArrayDatensatz1 {
    public static void main(String[] args) {
        // Hier wird der Array deklariert und initialisiert
        int[] daten = ...;
 
        // Hier werden die Daten gespeichert
        daten[0] = ...;
 
        // Hier werden die Daten ausgelesen
        Konsole.schreibeZeile(...);
    }
}

Datensatz 1

Erstellt ein int-Array:

Datensatz 2

Erstellt ein int-Array:

Datensatz 3

Erstellt ein double-Array, indem ihr die Werte in Millionen eintragt (z.B. 1.5 statt 1500000):

Datensätze 4, 5 & 6

Denkt euch weitere Datensätze aus, die ihr speichern könnt:

  • Einen int[]
  • Einen double[]
  • Einen String[]

Fachkonzept for-Schleife

Lest das Fachkonzept: for-Schleife durch und beantwortet folgende Fragen:

  • Was unterscheidet die for- von der while-Schleife?
  • Warum ist es im Kontext von Arrays sinnvoller, eine for-Schleife statt einer while-Schleife zu verwenden?
  • Für Interessierte: Welche Zahlenfolge wurde im unteren Beispiel verwendet?

Übung 2

Passt eure Lösungen aus Übung 1 so an, dass for-Schleifen verwendet werden. Tipp: Die "Namen" der Indizes (Klassensprecherkandidaten / Monate) kann man in einem String[] speichern!

Übung 3

Kopiert den folgenden Code in eine neue Java-Datei und probiert ihn ein paar mal aus. Beantwortet die folgenden Fragen:

  • Was macht der Code? Versucht die einzelnen Abschnitte in eigenen Worten zu beschreiben.
  • Die beiden Variablen geheimnis1 und geheimnis2 berechnen bestimmte Werte. Welche?
public class Geheimnis {
    public static void main(String[] args) {
      	// Abschnitt 1
        int laenge = Konsole.leseZahl("Wie viele Einträge? > ");        
        int[] daten = new int[laenge];
 
      	// Abschnitt 2
        for (int i = 0; i < daten.length; i += 1) {
            int datensatz = Konsole.leseZahl("Datensatz Nr. " + i + "? > ");
 
            daten[i] = datensatz;
        }
 
      	// Abschnitt 3
        double geheimnis1 = 0;        
        for (int i = 0; i < daten.length; i++) {
            geheimnis1 += daten[i];
        }
 
      	// Abschnitt 4  
        double geheimnis2 = geheimnis1 / daten.length;
 
      	// Abschnitt 5
        Konsole.schreibeZeile("Geheimnis 1 = " + geheimnis1);
        Konsole.schreibeZeile("Geheimnis 2 = " + geheimnis2);
    }
}
info/sek-ii/e2/java-grundlagen/l11-arrays.txt · Zuletzt geändert: 2021-06-17 15:00 von christian.weber