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

Aus MINT.lentner.net
Zur Navigation springen Zur Suche springen
 
(4 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 28: Zeile 28:
  
 
Nachdem wir jetzt beliebige Türme bauen können, wollen wir das jetzt gleich anwenden, indem wir 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; ">
 
<br style="clear:left; ">
Zeile 56: Zeile 58:
 
<br style="clear:left; ">
 
<br style="clear:left; ">
  
[[Datei: karoltreppe0.png |thumb|links | 250px|Treppen und Türme bauen]]
+
===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; ">
 +
 +
Anweisung BauTurm(X)
 +
  wiederhole X mal
 +
      Hinlegen
 +
  *wiederhole
 +
*Anweisung<br>
 
  Anweisung BauTreppe8
 
  Anweisung BauTreppe8
 
   BauTurm(1) Schritt
 
   BauTurm(1) Schritt
Zeile 73: Zeile 88:
 
   LinksDrehen
 
   LinksDrehen
 
   LinksDrehen
 
   LinksDrehen
  *Anweisung
+
  *Anweisung<br>
 
+
  BauTreppe8 LinksDrehen Schritt RechtsDrehen
  wiederhole 4 mal
+
  BauTreppe8 LinksDrehen Schritt RechtsDrehen
  BauTreppe8
+
  BauTreppe8 LinksDrehen Schritt RechtsDrehen
  LinksDrehen
+
  BauTreppe8 LinksDrehen Schritt RechtsDrehen
  Schritt
+
  BauTreppe8
  RechtsDrehen
+
  RechtsDrehen
  *wiederhole
+
  Schritt Schritt Schritt Schritt
 
 
 
 
[[Datei: karolbad1.png |thumb|links|250px|Einfach nur alle Handgriffe kopieren]]
 
 
 
Im Programmierfenster links kannst Du Karol Anweisungen geben. Bist Du schnell im Schreiben, dann kannst Du einfach '''Schritt''' schreiben, '''LinksDrehen''', u.s.w. und ein Knopfdruck auf den ''Playbutton'' startet Karol. Karol baut jetzt für Dich nach Deinen Anweisungen. Du kannst auch mit der ''rechten Maustaste'' Befehle auswählen und einfügen, ohne sie zu schreiben.
 
 
 
Jetzt kannst Du immer wieder ''starten'' und Karol bei der ''selbstständigen Arbeit'' zusehen.
 
 
 
Mit den '''Short-Cuts <Strg>+<X>, <Strg>+<C> und <Strg>+<V>''' kannst Du ganze Textblöcke einfach kopieren und sparst Dir viel Schreibarbeit.
 
 
 
'''Tipp:''' Probier' mal, den ganzen Textblock des Programms unten nochmal 5x zu kopieren, dann baut Karol ein '''5 Reihen hohes Schwimmbad'''!
 
 
 
'''Aber:''' Du sagst ja Deinem Lehrling auch nicht 100x '''"Gehe einen Schritt!"''' (eher sagst Du genervt, ''"Das hab ich Dir doch schon 100x gesagt"''. Sondern Du sagst, '''"Gehe 100 Schritte!"''' Kann man Karol auch sagen, dass er etwas 100x machen soll?
 
 
 
<br style="clear:left; ">
 
 
 
//Westseite
 
Hinlegen
 
Schritt
 
Hinlegen
 
Schritt
 
Hinlegen
 
Schritt
 
Hinlegen
 
Schritt
 
  LinksDrehen
 
//Südseite
 
Hinlegen
 
Schritt
 
Hinlegen
 
Schritt
 
Hinlegen
 
Schritt
 
Hinlegen
 
Schritt
 
  LinksDrehen
 
//Ostseite
 
Hinlegen
 
Schritt
 
  Hinlegen
 
  Schritt
 
Hinlegen
 
  Schritt
 
Hinlegen
 
Schritt
 
LinksDrehen
 
//Nordseite
 
Hinlegen
 
Schritt
 
Hinlegen
 
Schritt
 
Hinlegen
 
Schritt
 
Hinlegen
 
Schritt
 
 
  LinksDrehen
 
  LinksDrehen
  
 
<br style="clear:left; ">
 
<br style="clear:left; ">

Aktuelle Version vom 17. April 2021, 20: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