aboutsummaryrefslogtreecommitdiff
path: root/Info/9/3/Planet/algorithmik/for/variablen.md
diff options
context:
space:
mode:
authorFlorian Fischer <florian.fischer@muhq.space>2026-05-07 19:44:09 +0200
committerFlorian Fischer <florian.fischer@muhq.space>2026-05-07 19:44:09 +0200
commit5de9b9f19515b5fc5bb5519ccccd5d5f6fc54165 (patch)
tree8959c3b0875a8edebc9aca57f37603ba0afdeb12 /Info/9/3/Planet/algorithmik/for/variablen.md
parent7e6e89e3ed0736686e157bc43171a540337fe763 (diff)
downloadunterricht-5de9b9f19515b5fc5bb5519ccccd5d5f6fc54165.tar.gz
unterricht-5de9b9f19515b5fc5bb5519ccccd5d5f6fc54165.zip
planet: add for loop material
Diffstat (limited to 'Info/9/3/Planet/algorithmik/for/variablen.md')
-rw-r--r--Info/9/3/Planet/algorithmik/for/variablen.md155
1 files changed, 155 insertions, 0 deletions
diff --git a/Info/9/3/Planet/algorithmik/for/variablen.md b/Info/9/3/Planet/algorithmik/for/variablen.md
new file mode 100644
index 00000000..e8873813
--- /dev/null
+++ b/Info/9/3/Planet/algorithmik/for/variablen.md
@@ -0,0 +1,155 @@
+---
+section: Wiederholung mit fester Anzahl
+title: Variablen
+---
+:::{.terminal}
+Unser Rover hat nicht unbegrenzt Stauraum und er darf auch nicht zu schwer werden, sonst schafft er es nicht wieder zurück zur Basis.
+Der Rover muss sich merken können wie viele Steine er bereits aufgehoben hat.
+[_]{.blink}
+:::
+
+Zum Speichern von Werten kann man Variablen verwenden.
+Eine Variable kann man sich wie eine [**Kiste**]{.solution} vorstellen, in der Werte abgelegt werden können.
+Jede Kiste hat einen eindeutigen [**Datentyp**]{.solution}.
+Das heißt, zum Speichern von Zahlen muss man andere Kisten (bzw. einen anderen Datentyp) verwenden als zum Speichern von Texten.
+
+:::{.tipp}
+Das Erzeugen einer Variable geschieht in zwei Schritten:
+
+##### 1. [Deklaration]{.solution}
+
+Als erstes muss man den **Datentyp** und den **Namen** der Variable festlegen.
+
+::: {.columns}
+:::: {.column width=50%}
+**Kistenmodell**
+::::
+:::: {.column width=50%}
+**Java**
+::::
+:::
+::: {.columns style="align-items: center;"}
+:::: {.column width=50%}
+![](img/kiste-dekl.png){.center style="max-width:min(100%, 15rem);"}
+::::
+
+:::: {.column width=50%}
+```java
+int zaehler;
+```
+::::
+:::
+
+:::{.tipp}
+**Wichtig:** Der Datentyp wird nur einmal bei der "*Erstellung*" der Variable genannt, danach nie wieder!
+:::
+
+##### 2. [Initialisierung]{.solution}
+
+Nun muss man einen Anfangswert festlegen, den sogenannten **Initialwert**.
+
+::: {.columns}
+:::: {.column width=50%}
+**Kistenmodell**
+::::
+:::: {.column width=50%}
+**Java**
+::::
+:::
+::: {.columns style="align-items: center;"}
+:::: {.column width=50%}
+![](img/kiste-init.png){.center style="max-width:min(100%, 15rem);"}
+::::
+
+:::: {.column width=50%}
+```java
+zaehler = 0;
+```
+::::
+:::
+:::
+
+Nachdem eine Variable deklariert und initialisiert wurde, kann man sie verwenden.
+Z. B. zum Zählen von Gesteinen auf dem Weg zur Marke.
+Der Rover soll zählen, wie viele Gesteine auf dem Weg bis zur Marke liegen.
+
+![](img/rover-count0.png){.center style="max-width: min(100%, 900px);"}
+
+Wenn der Rover auf einem Gestein ist, soll der Zähler um 1 erhöht werden.
+Zum Erhöhen eines Wertes kann wird der aktuelle Variablenwert genommen und mit 1 addiert und schließlich der Variable wieder zugewiesen.
+
+:::{style="text-align: center;"}
+**Zuweisung**: `zaehler ← zaehler + 1`
+:::
+
+Erhöhe durch eine Zuweisung den Zähler um 1, wenn er auf einem Gestein steht:
+
+![](img/rover-count1.png){.center style="max-width: min(100%, 900px);"}
+
+:::{style="text-align: center;"}
+`zaehler ← 0 + 1`
+:::
+
+![](img/rover-count2.png){.center style="max-width: min(100%, 900px);"}
+
+:::{style="text-align: center;"}
+`zaehler ← 1 + 1`
+:::
+
+![](img/rover-count3.png){.center style="max-width: min(100%, 900px);"}
+
+:::{style="text-align: center;"}
+`zaehler ← 2 + 1`
+:::
+
+![](img/rover-count4.png){.center style="max-width: min(100%, 900px);"}
+
+:::{style="text-align: center;"}
+`zaehler ← 3 + 1`
+:::
+
+:::{.tipp}
+**Hinweis:** In Java gibt es keinen Pfeil, daher verwendet man ein `=`-Zeichen:
+
+`zaehler = zaheler + 1`{.java}
+:::
+
+:::{.page-break}
+:::
+
+:::{.merke data-class="Merke: Variablen"}
+Eine Variable **speichert** einen Werte.
+
+Eine Variable muss:
+
+1. mit **Datentyp** und **Namen** **deklariert** werden
+
+----------------------------------------
+Allgmein Java
+-------------------- ------------------
+`<Datentyp> <Name>;` `int zahl;`{.java}
+----------------------------------------
+
+2. mit einem **Startwert** **initialisiert** werden
+
+---------------------------------------
+Allgmein Java
+------------------- ------------------
+`<Name> = <Wert>;` `zahl = 5;`{.java}
+---------------------------------------
+:::
+
+:::{.aufgabe data-class="Aufgabe 6.1.1"}
+Der Rover soll bis Zur Marke fahren und auf dem Weg alle Gesteine zählen.
+Schreibe dazu die Methode `zaehleGestein()`, die am Ende die Anzahl der Steine auf dem Weg *zurückgibt*.
+**Hinweis:** Überlege dir, ob es eine verändernde oder zurückgebende Methode ist?
+
+![](img/rover-count0.png){.center style="max-width: min(100%, 900px);"}
+:::
+
+:::{.erledigt}
+:::
+
+:::{.no-print}
+<< Zurück zu TODO: %section%
+:::