Wiederholung mit Laufvariable: Unterschied zwischen den Versionen

Aus KGS-Wiki
Keine Bearbeitungszusammenfassung
(Blockly und ein bisschen Python)
Zeile 21: Zeile 21:


===AppInventor===
===AppInventor===
[[Datei:Blockly Wiederholung mit Laufvariablen.png|mini|Dieser Block zählt eine Variable namens <code>Zahl</code> von <code>1</code> bis <code>5</code> hoch. ]]
Im [[AppInventor]] gibt es in der Kategorie ''Steuerung'' den Block ''"Für jede <code>Zahl</code> von ... bis ... Schrittweite... mache ..."''. Die Laufvariable <code>Zahl</code> kann dabei im Rumpf der Wiederholung - und nur dort - verwendet werden. Als Start- und Endwert sowie Schrittweite können beliebige [[Ausdruck|Ausdrücke]] angehängt werden.  
Im [[AppInventor]] gibt es in der Kategorie ''Steuerung'' den Block ''"Für jede <code>Zahl</code> von ... bis ... Schrittweite... mache ..."''. Die Laufvariable <code>Zahl</code> kann dabei im Rumpf der Wiederholung - und nur dort - verwendet werden. Als Start- und Endwert sowie Schrittweite können beliebige [[Ausdruck|Ausdrücke]] angehängt werden.  
===NEPO===
===NEPO===
In [[NEPO]] sehen die entsprechenden Blöcke so ähnlich aus wie im AppInventor. Sie befinden sich in der Kategorie ''Kontrolle''. In NEPO hat man die Wahl, ob man die Anweisungen wiederholen möchte, ''bis'' die Bedingung erfüllt ist oder ''solange'' sie erfüllt ist.<gallery widths="360" heights="100">
In [[NEPO]] sehen die entsprechenden Blöcke so ähnlich aus wie im AppInventor. Sie befinden sich in der Kategorie ''Kontrolle''.
Datei:NEPO While.svg|Der Text "Flossen weg!" wird angezeigt, '''''solange''''' die Taste A gedrückt wird.
{{Lückenhaft|Hier fehlt ein Bild
Datei:NEPO Repeat Until.svg|Der Text "Drück mich!" wird angezeigt, '''''bis''''' die Taste A gedrückt wird.
}}
</gallery>


==Textuelle Programmierung ==
==Textuelle Programmierung ==
Zeile 32: Zeile 32:
===Python ===
===Python ===
In [[Python (Programmiersprache)|Python]] wird das Schlüsselwort <code>for ''x'' in ''y''</code> 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 (Datentyp)|String]] oder eine Range.<syntaxhighlight lang="python" line="1">
In [[Python (Programmiersprache)|Python]] wird das Schlüsselwort <code>for ''x'' in ''y''</code> 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 (Datentyp)|String]] oder eine Range.<syntaxhighlight lang="python" line="1">
name = ''
wort = "INFORMATIK"


while name == '':
for buchstabe in wort:
  name = input('Wie heißt du?')
    print("Gebt mir ein " + buchstabe + "!")
    print(buchstabe + "!!!"


print('Hallo ') + name
print("Was ist das?!")
print(wort + "!!!")
</syntaxhighlight>
</syntaxhighlight>



Version vom 26. März 2024, 17:56 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.

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.

🕳
Lückenhaft

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

Dieser Block zählt eine Variable namens Zahl von 1 bis 5 hoch.

Im AppInventor gibt es in der Kategorie Steuerung den Block "Für jede Zahl von ... bis ... Schrittweite... 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.

🕳
Lückenhaft

In diesem Artikel oder Abschnitt fehlen noch folgende wichtige Informationen:

Hier fehlt ein Bild

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, 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);

Weblinks