Robot Karol: Schwimmbäder bauen: Unterschied zwischen den Versionen
Zeile 76: | Zeile 76: | ||
[[Datei: karolbad3.png |thumb|links|250px|Wie kann ich Karol lernen, dass er sich an die Raumgröße anpasst?]] | [[Datei: karolbad3.png |thumb|links|250px|Wie kann ich Karol lernen, dass er sich an die Raumgröße anpasst?]] | ||
− | Sieh' Dir mal das Programm unten genau an! Es hat | + | Sieh' Dir mal das Programm unten genau an! Es hat dieselbe Wirkung, wie der ''"irre"'' Befehlstext oben. Ist er nicht 10x einfacher zu verstehen, 10x übersichtlicher? Du kannst offensichtlich auch Befehle hintereinander schreiben statt nur immer untereinander. Dadurch werden auch Sinn-zusammenhängende ''"Codeschnipsel"'' leichter erkennbar. |
Außerdem musst Du '''nur eine Zahl ändern''', wenn Karol die Strecke nicht 4x sondern vielleicht 10x oder 200x gehen und ziegeln soll. | Außerdem musst Du '''nur eine Zahl ändern''', wenn Karol die Strecke nicht 4x sondern vielleicht 10x oder 200x gehen und ziegeln soll. |
Version vom 17. April 2021, 14:28 Uhr
Inhaltsverzeichnis
Version 0: Alles per Hand selber machen. Auch das geht!
Mit den Knöpfen unter Deinem Grafikfenster kannst Du natürlich per Hand alles bauen. Das kannst Du unter "Welt speichern" auch aufheben und durch Öffnen Welt auch jederzeit wieder herholen. Das macht man auch, um einmalig mal eine Spielwelt (z.B. Ein Level für ein Computerspiel) zu entwerfen.
Mit Welt direkt festlegen (vorher in 2D-Modus wechseln!) geht das auch ganz fix.
Aber Roboter programmiert man aus anderen Gründen: Du möchtest Anweisungen so geben, dass Karol selber die Dinge baut - und zwar so baut, wie Du willst.
Stell' Dir vor, der Roboter Karol ist Dein Lehrjunge und Du lernst ihm, das Schwimmbad zu bauen.
Version 1: Gib Karol Deine Anweisungen im Anweisungsfenster links
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?
//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
Version 2: Mit Wiederholungen alles einfacher, flexibler und übersichtlicher gestalten
Sieh' Dir mal das Programm unten genau an! Es hat dieselbe Wirkung, wie der "irre" Befehlstext oben. Ist er nicht 10x einfacher zu verstehen, 10x übersichtlicher? Du kannst offensichtlich auch Befehle hintereinander schreiben statt nur immer untereinander. Dadurch werden auch Sinn-zusammenhängende "Codeschnipsel" leichter erkennbar.
Außerdem musst Du nur eine Zahl ändern, wenn Karol die Strecke nicht 4x sondern vielleicht 10x oder 200x gehen und ziegeln soll.
wiederhole 4 mal Hinlegen Schritt Hinlegen Schritt Hinlegen Schritt Hinlegen Schritt LinksDrehen *wiederhole
Version 3
Erklärung
Anweisung GeheBisZurWand solange NichtIstWand tue Schritt *solange *Anweisung
Anweisung GeheRundherum wiederhole 4 mal GeheBisZurWand LinksDrehen *wiederhole *Anweisung
GeheRundherum
Version 4
Erklärung
Anweisung ZiegleBisZurWand solange NichtIstWand tue Hinlegen Schritt *solange *Anweisung
Anweisung ZiegleRundherum wiederhole 4 mal ZiegleBisZurWand LinksDrehen *wiederhole *Anweisung
//Hauptprogramm wiederhole 5 mal ZiegleRundherum *wiederhole