Wiederholung mit fester Anzahl: Unterschied zwischen den Versionen

Aus KGS-Wiki
(Seite begonnen)
 
(Es wird)
Zeile 8: Zeile 8:


Im [[Pseudocode]] wird das Schlüsselwort <code>repeat X times</code> verwendet, wobei für <code>X</code> ein beliebiger [[Ausdruck]] eingesetzt werden darf, der die Anzahl der Durchläufe angibt.
Im [[Pseudocode]] wird das Schlüsselwort <code>repeat X times</code> verwendet, wobei für <code>X</code> ein beliebiger [[Ausdruck]] eingesetzt werden darf, der die Anzahl der Durchläufe angibt.
Am Ende der Wiederholung steht das Schlüsselwort <code>endrepeat</code>.
Am Ende der Wiederholung steht das Schlüsselwort <code>endrepeat</code>.<syntaxhighlight lang="text" line="1">
repeat 10 times
print "Im dichten Fichtendickicht nicken dicke Fichten tüchtig."
endrepeat
</syntaxhighlight>


== Visuelle Programmierung ==
== Visuelle Programmierung ==
 
In [[Scratch]] gibt es für die Wiederholung mit fester Anzahl den Block ''"Wiederhole _ Mal"'':<scratchblocks>
<scratchblocks>
wiederhole [10] Mal
wiederhole [10] Mal
sage [Im dichten Fichtendickicht nicken dicke Fichten tüchtig]
sage [Im dichten Fichtendickicht nicken dicke Fichten tüchtig]
Ende
Ende
</scratchblocks>
</scratchblocks>Statt einer festen Zahl kann jeder beliebige [[Ausdruck]] mit einer runden Blockform eingesetzt werden.


{{Lückenhaft}}
== Textuelle Programmierung ==
Die Wiederholung mit fester Anzahl ist ein Konstrukt, das nur in wenigen Programmiersprachen vorhanden ist. In [[Ruby]] gibt es zum Beispiel das Schlüsselwort <code>times</code> für eine Wiederholung mit fester Anzahl:<syntaxhighlight lang="ruby" line="1">
10.times {
  puts "Im dichten Fichtendickicht nicken dicke Fichten tüchtig."
}
</syntaxhighlight>In anderen Sprachen wie [[Python (Programmiersprache)|Python]] oder [[Java (Programmiersprache)|Java]] gibt es keine Wiederholung mit fester Anzahl; dort muss man eine andere Methode wählen wie etwa die [[Wiederholung mit Laufvariable]]:<syntaxhighlight lang="python" line="1">
for _ in range(10):
  print("Im dichten Fichtendickicht nicken dicke Fichten tüchtig.")
</syntaxhighlight>{{Navigationsleiste Bestandteile von Algorithmen}}
[[Kategorie:Algorithmen]]

Version vom 19. März 2024, 06:47 Uhr

Eine Wiederholung mit fester Anzahl ist eine Anweisung oder eine Sequenz von Anweisungen, die mehrmals nacheinander ausgeführt wird. Wie oft die Anweisungen ausgeführt werden, wird dabei explizit angegeben.

Umgangssprachliches Beispiel: "Sag zehnmal ganz schnell 'Im dichten Fichtendickicht nicken dicke Fichten tüchtig.'!" Die Anweisung "Sag ganz schnell 'Im dichten Fichtendickicht nicken dicke Fichten tüchtig.'" wird dabei zehn Mal ausgeführt.

Darstellung von Algorithmen

Bei PAPs gibt es keine eigene Syntax für Wiederholungen mit fester Anzahl. Diese können lediglich als bedingte Wiederholung dargestellt werden, indem in einer Variablen mitgezählt wird, wie oft die Anweisungen schon ausgeführt wurden oder noch ausgeführt werden müssen.

Im Pseudocode wird das Schlüsselwort repeat X times verwendet, wobei für X ein beliebiger Ausdruck eingesetzt werden darf, der die Anzahl der Durchläufe angibt.

Am Ende der Wiederholung steht das Schlüsselwort endrepeat.

repeat 10 times
print "Im dichten Fichtendickicht nicken dicke Fichten tüchtig."
endrepeat

Visuelle Programmierung

In Scratch gibt es für die Wiederholung mit fester Anzahl den Block "Wiederhole _ Mal":

wiederhole [10] Mal
sage [Im dichten Fichtendickicht nicken dicke Fichten tüchtig]
Ende

Statt einer festen Zahl kann jeder beliebige Ausdruck mit einer runden Blockform eingesetzt werden.

Textuelle Programmierung

Die Wiederholung mit fester Anzahl ist ein Konstrukt, das nur in wenigen Programmiersprachen vorhanden ist. In Ruby gibt es zum Beispiel das Schlüsselwort times für eine Wiederholung mit fester Anzahl:

10.times {
  puts "Im dichten Fichtendickicht nicken dicke Fichten tüchtig."
}

In anderen Sprachen wie Python oder Java gibt es keine Wiederholung mit fester Anzahl; dort muss man eine andere Methode wählen wie etwa die Wiederholung mit Laufvariable:

for _ in range(10):
  print("Im dichten Fichtendickicht nicken dicke Fichten tüchtig.")