Robot Karol: Türme und Treppen bauen: Unterschied zwischen den Versionen

Aus MINT.lentner.net
Zur Navigation springen Zur Suche springen
 
(15 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
 
[[Robot Karol | >>> zurück zur Übersicht von Robot Karol]]
 
[[Robot Karol | >>> zurück zur Übersicht von Robot Karol]]
  
[[Datei: karoltreppe0.png |thumb|250px|Treppen und Türme bauen]]
+
 
 +
===Version 1: Anweisungen durch zusätzliche Angaben variieren - Parameter===
 +
 
 +
[[Datei: karoltreppe1.png |thumb|links|250px|verschieden hohe Türme bauen]]
 +
 
 +
Wir wollen jetzt verschieden hohe Türme bauen. Dazu geben wir einer Anweisung '''BauTurm''' zusätzlich die Info mit, wie viele Ziegel der Turm hoch sein soll: Aus '''BauTurm''' wird '''BauTurm(4)'''.
 +
 
 +
In der Definition der Anweisung muss ein Platzhalter stehen. Den darf man frei wählen.
 +
 
 +
<br style="clear:left; ">
  
 
  Anweisung BauTurm(X)
 
  Anweisung BauTurm(X)
Zeile 7: Zeile 16:
 
       Hinlegen
 
       Hinlegen
 
   *wiederhole
 
   *wiederhole
  *Anweisung
+
  *Anweisung<br>
 +
BauTurm(4)
 +
LinksDrehen
 +
BauTurm(3)
 +
 
 +
<br style="clear:left; ">
 +
 
 +
===Version 2: Eine Treppe fester Höhe bauen===
 +
 
 +
[[Datei: karoltreppe2.png |thumb|links|250px|eine Treppe bauen]]
 +
 
 +
Nachdem wir jetzt beliebige Türme bauen können, wollen wir das jetzt gleich anwenden, indem wir eine Treppe bauen.
 +
 
 +
'''Aufgabe:''' Es ist ziemlich knifflig, einen Treppenbau beliebiger Höhe als Anweisung zu entwerfen, weil man sich in dieser Programmiersprache keine ''"Zahlen merken kann"''.
 +
 
 +
<br style="clear:left; ">
  
 +
Anweisung BauTurm(X)
 +
  wiederhole X mal
 +
      Hinlegen
 +
  *wiederhole
 +
*Anweisung<br>
 
  Anweisung BauTreppe8
 
  Anweisung BauTreppe8
 
   BauTurm(1) Schritt
 
   BauTurm(1) Schritt
Zeile 24: Zeile 53:
 
   LinksDrehen
 
   LinksDrehen
 
   LinksDrehen
 
   LinksDrehen
  *Anweisung
+
  *Anweisung<br>
 +
BauTreppe8
 +
 
 +
<br style="clear:left; ">
 +
 
 +
===Version 3: Eine breitere Treppe bauen===
 +
 
 +
[[Datei: karoltreppe3.png |thumb|links|250px|eine breitere Treppe bauen]]
 +
 
 +
Wenn wir jetzt die Anweisung nebeneinander mehrmals benutzen, können wir breitere Treppen bauen.
 +
 
 +
'''Aufgabe:''' Kannst Du eine Anweisung schreiben, die beliebig breite Treppen baut?.
 +
 
 +
<br style="clear:left; ">
  
  wiederhole 4 mal
+
  Anweisung BauTurm(X)
   BauTreppe8
+
  wiederhole X mal
 +
      Hinlegen
 +
   *wiederhole
 +
*Anweisung<br>
 +
Anweisung BauTreppe8
 +
  BauTurm(1) Schritt
 +
  BauTurm(2) Schritt
 +
  BauTurm(3) Schritt
 +
  BauTurm(4) Schritt
 +
  BauTurm(5) Schritt
 +
  BauTurm(6) Schritt
 +
  BauTurm(7) Schritt
 +
  BauTurm(8) Schritt
 +
  LinksDrehen
 
   LinksDrehen
 
   LinksDrehen
   Schritt
+
   Schritt Schritt Schritt Schritt
   RechtsDrehen
+
   Schritt Schritt Schritt Schritt
  *wiederhole
+
  LinksDrehen
 +
  LinksDrehen
 +
*Anweisung<br>
 +
BauTreppe8 LinksDrehen Schritt RechtsDrehen
 +
BauTreppe8 LinksDrehen Schritt RechtsDrehen
 +
BauTreppe8 LinksDrehen Schritt RechtsDrehen
 +
BauTreppe8 LinksDrehen Schritt RechtsDrehen
 +
BauTreppe8
 +
RechtsDrehen
 +
  Schritt Schritt Schritt Schritt
 +
LinksDrehen
 +
 
 +
<br style="clear:left; ">

Aktuelle Version vom 17. April 2021, 19:17 Uhr

>>> zurück zur Übersicht von Robot Karol


Version 1: Anweisungen durch zusätzliche Angaben variieren - Parameter

verschieden hohe Türme bauen

Wir wollen jetzt verschieden hohe Türme bauen. Dazu geben wir einer Anweisung BauTurm zusätzlich die Info mit, wie viele Ziegel der Turm hoch sein soll: Aus BauTurm wird BauTurm(4).

In der Definition der Anweisung muss ein Platzhalter stehen. Den darf man frei wählen.


Anweisung BauTurm(X)
  wiederhole X mal
     Hinlegen
  *wiederhole
*Anweisung
BauTurm(4) LinksDrehen BauTurm(3)


Version 2: Eine Treppe fester Höhe bauen

eine Treppe bauen

Nachdem wir jetzt beliebige Türme bauen können, wollen wir das jetzt gleich anwenden, indem wir eine Treppe bauen.

Aufgabe: Es ist ziemlich knifflig, einen Treppenbau beliebiger Höhe als Anweisung zu entwerfen, weil man sich in dieser Programmiersprache keine "Zahlen merken kann".


Anweisung BauTurm(X)
  wiederhole X mal
     Hinlegen
  *wiederhole
*Anweisung
Anweisung BauTreppe8 BauTurm(1) Schritt BauTurm(2) Schritt BauTurm(3) Schritt BauTurm(4) Schritt BauTurm(5) Schritt BauTurm(6) Schritt BauTurm(7) Schritt BauTurm(8) Schritt LinksDrehen LinksDrehen Schritt Schritt Schritt Schritt Schritt Schritt Schritt Schritt LinksDrehen LinksDrehen *Anweisung
BauTreppe8


Version 3: Eine breitere Treppe bauen

eine breitere Treppe bauen

Wenn wir jetzt die Anweisung nebeneinander mehrmals benutzen, können wir breitere Treppen bauen.

Aufgabe: Kannst Du eine Anweisung schreiben, die beliebig breite Treppen baut?.


Anweisung BauTurm(X)
  wiederhole X mal
     Hinlegen
  *wiederhole
*Anweisung
Anweisung BauTreppe8 BauTurm(1) Schritt BauTurm(2) Schritt BauTurm(3) Schritt BauTurm(4) Schritt BauTurm(5) Schritt BauTurm(6) Schritt BauTurm(7) Schritt BauTurm(8) Schritt LinksDrehen LinksDrehen Schritt Schritt Schritt Schritt Schritt Schritt Schritt Schritt LinksDrehen LinksDrehen *Anweisung
BauTreppe8 LinksDrehen Schritt RechtsDrehen BauTreppe8 LinksDrehen Schritt RechtsDrehen BauTreppe8 LinksDrehen Schritt RechtsDrehen BauTreppe8 LinksDrehen Schritt RechtsDrehen BauTreppe8 RechtsDrehen Schritt Schritt Schritt Schritt LinksDrehen