Wiederholung mit Laufvariable: Unterschied zwischen den Versionen
Sn (Diskussion | Beiträge) (→AppInventor: java) |
Sn (Diskussion | Beiträge) (→Java: classic for) |
||
Zeile 45: | Zeile 45: | ||
===Java === | ===Java === | ||
In Java kann eine Wiederholung mit Laufvariable auf beide Arten implementiert werden:<syntaxhighlight lang="java"> | In Java kann eine Wiederholung mit Laufvariable auf beide Arten implementiert werden. | ||
;Option 1: Es wird eine Variable angegeben, eine Abbruchbedingung und eine Anweisung, diese Variable hochzuzählen: <syntaxhighlight lang="java" line="1"> | |||
for (int i = 1; i <= 10; i = i + 1) { | for (int i = 1; i <= 10; i = i + 1) { | ||
System.out.println("" + i); | System.out.println("" + i); | ||
} | } | ||
// | // Dasselbe mit einer while-Wiederholung: | ||
int i = 1; | |||
while (i <= 10) { | |||
System.out.println("" + i); | |||
i = i + 1; | |||
} | } | ||
</syntaxhighlight> | </syntaxhighlight>Im Unterschied zum AppInventor-Block hat man hier wesentlich mehr Freiheit, weil die Bedingung und die Anweisung zum Hochzählen völlig frei formuliert werden können. | ||
===JavaScript, C usw. === | ===JavaScript, C usw. === |
Version vom 27. März 2024, 16:00 Uhr
Eine Wiederholung mit Laufvariable ist eine nützliche Kontrollstruktur beim Programmieren. Hierbei wird eine Anweisung oder eine Sequenz von Anweisungen wiederholt ausgeführt, wobei mit jedem Durchgang eine so genannte Laufvariable verändert wird. Auf den Wert der Variablen können die Anweisungen in der Wiederholung zugreifen.
Es gibt zwei Arten von Wiederholungen mit Laufvariablen: solche, bei denen die Variable nach einem festen Muster hochgezählt wird, und solche, die eine Datenstruktur wie eine Liste oder ein Wörterbuch Element für Element durchgehen.
Beschreibungen von Algorithmen
In Programmablaufplänen gibt es kein explizites Syntaxelement, um Wiederholungen mit Laufvariablen darzustellen. Diese können aber mit geringem Aufwand als Bedingte Wiederholungen modelliert werden.
Im Pseudocode werden die Schlüsselwörter for
, from
, to
, step
, do
und endfor
verwendet, um die Wiederholung mit Laufvariable umzusetzen.
summe := 0
for x from 1 to 7 step 2 do
summe := summe + x
endfor
Die Variable x
nimmt hier nacheinander die Werte 1, 3, 5 und 7 an.
In diesem Artikel oder Abschnitt fehlen noch wichtige Informationen.
Hilf dem KGS-Wiki, indem du sie recherchierst und einfügst.
Visuelle Programmierung
In Scratch gibt es keine Wiederholung mit Laufvariable. Diese Kontrollstruktur muss hier anders umgesetzt werden, etwa mit einer Wiederholung mit fester Anzahl.
AppInventor
Im AppInventor gibt es in der Kategorie Steuerung den Block "Für jede Zahl
von ... bis ... um ... mache ...". Die Laufvariable Zahl
kann dabei im Rumpf der Wiederholung - und nur dort - verwendet werden. Als Start- und Endwert sowie Schrittweite können beliebige Ausdrücke angehängt werden.
NEPO
In NEPO sehen die entsprechenden Blöcke so ähnlich aus wie im AppInventor. Sie befinden sich in der Kategorie Kontrolle.
In diesem Artikel oder Abschnitt fehlen noch folgende wichtige Informationen:
Hilf dem KGS-Wiki, indem du sie recherchierst und einfügst.
Textuelle Programmierung
Python
In Python wird das Schlüsselwort for x in y
benutzt, um bedingte Wiederholungen umzusetzen. x ist die Laufvariable und y muss eine Datenstruktur sein, durch die iteriert werden kann, z.B. eine Liste, ein String oder eine Range.
wort = "INFORMATIK"
for buchstabe in wort:
print("Gebt mir ein " + buchstabe + "!")
print(buchstabe + "!!!"
print("Was ist das?!")
print(wort + "!!!")
Java
In Java kann eine Wiederholung mit Laufvariable auf beide Arten implementiert werden.
- Option 1
- Es wird eine Variable angegeben, eine Abbruchbedingung und eine Anweisung, diese Variable hochzuzählen: Im Unterschied zum AppInventor-Block hat man hier wesentlich mehr Freiheit, weil die Bedingung und die Anweisung zum Hochzählen völlig frei formuliert werden können.
for (int i = 1; i <= 10; i = i + 1) { System.out.println("" + i); } // Dasselbe mit einer while-Wiederholung: int i = 1; while (i <= 10) { System.out.println("" + i); i = i + 1; }
JavaScript, C usw.
In den "Curly-Bracket-Sprachen" gibt es zwei Möglichkeiten, bedingte Wiederholungem umzusetzen: while
und do-while
. Der Unterschied ist, dass bei der Wiederholung mit do-while
die Anweisungen bereits ausgeführt werden, bevor die Bedingung zum ersten Mal überprüft wird:
while (name == '') {
name = prompt('Wie heißt du?');
}
alert('Hallo ' + name);
do {
name = prompt('Wie heißt du?')
} while (name == '');
alert('Hallo ' + name);