{"id":598,"date":"2006-05-06T14:47:33","date_gmt":"2006-05-06T12:47:33","guid":{"rendered":"https:\/\/www.herr-rau.de\/wordpress\/2006\/05\/geheimnisvolle-ruinenstadt-mit-robot-karol.htm"},"modified":"2024-02-03T08:01:44","modified_gmt":"2024-02-03T07:01:44","slug":"geheimnisvolle-ruinenstadt-mit-robot-karol","status":"publish","type":"post","link":"https:\/\/www.herr-rau.de\/wordpress\/2006\/05\/geheimnisvolle-ruinenstadt-mit-robot-karol.htm","title":{"rendered":"Geheimnisvolle Ruinenstadt mit Robot Karol"},"content":{"rendered":"<div style='text-align:right;'><small>(<a href='https:\/\/www.herr-rau.de\/wordpress\/2006\/05\/geheimnisvolle-ruinenstadt-mit-robot-karol.htm#comments'>38 Kommentare.<\/a>)<\/small> <\/div>\n<p class=\"wp-block-paragraph\">Robot Karol ist ein weit verbreitetes Programm f\u00fcr den Anfangsunterricht Informatik. (<a href=\"http:\/\/www.schule.bayern.de\/karol\/download.htm\">Herunterladen und Informationen<\/a>.) Man bewegt darin einen Roboter, der nur die Anweisungen Linksdrehen, Rechtsdrehen, Vorw\u00e4rtsschritt, Hinlegen und Aufheben (jeweils eines Steines bzw. einer Marke) versteht. Man kann kann aus diesen elementaren Anweisungen aber neue Anweisungen zusammenstellen und diesen Namen geben: zum Beispiel Umdrehen (=zweimal Linksdrehen), Sidestep (=Linksdrehen, Schritt, Rechtsdrehen), Zur\u00fcck (=Umdrehen, Schritt, Umdrehen).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Steuern kann man den Roboter durch Wiederholungsschleifen mit fester Anzahl oder Abbruchbbedingung und Wenn-dann-sonst-Bedingungen. Es gibt keine Variablen (aus didaktischen Gr\u00fcnden) und damit auch keine For-Next-Schleife, obwohl die die Sch\u00fcler schon vermisst haben. Rekursion ist m\u00f6glich.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Typische Aufgaben: Eine Treppe bauen, eine Fl\u00e4che auslegen, ein Feld voller Ziegel aufr\u00e4umen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Untypische Aufgaben:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/www.herr-rau.de\/wordpress\/archiv\/karol-stadt_klein.png\" alt=\"\"\/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Jedes Sch\u00fclerpaar sollte die Anweisung f\u00fcr ein Geb\u00e4ude einer Ruinenstadt schreiben. Die Sch\u00fcler mussten sich dabei an Vorgaben halten, ohne die ihr Geb\u00e4ude nicht in die Stadt integriert werden konnte:<br>Arbeitsbereich 15&#215;15 Felder (maximale Bauh\u00f6he programmbedingt 10 Ziegel), davon musste mindestens 1 Feld unbebauter Rand bleiben. Der Roboter beginnt links hinten zu bauen und steht am Ende in der gleichen Position am gleichen Ort. (Herunterspringen und Hinaufklettern nur jeweils um 1 H\u00f6henunterschied.) Nur dann ist es m\u00f6glich, ihn automatisch zur n\u00e4chsten Baustelle zu bef\u00f6rdern.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Dann schrieben die Sch\u00fcler ihre Anweisungen, ich f\u00fcgte sie zu einer Programmdatei zusammen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Das fertige Programm, aus dem das Bild oben wurde, sah so aus:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code><br>\nProgramm<br>\n&nbsp; Stadtmauer<br>\n&nbsp; Burg<br>\n&nbsp; weiter<br>\n&nbsp; Tempel<br>\n&nbsp; Pyramide1<br>\n&nbsp; weiter<br>\n&nbsp; Pyramide2<br>\n&nbsp; Pyramide3<br>\n&nbsp; Pyramide4<br>\n&nbsp; weiter<br>\n&nbsp; Pyramide5<br>\n&nbsp; weiter<br>\n&nbsp; Tempel<br>\n&nbsp; weiter<br>\n&nbsp; weiter<br>\n&nbsp; Burg<br>\n&nbsp; Pyramide2<br>\n&nbsp; weiter<br>\n&nbsp; Pyramide4<br>\n&nbsp; weiter<br>\n&nbsp; weiter<br>\n&nbsp; Turm1<br>\n&nbsp; Turm2<br>\n&nbsp; Opferplatz2<br>\n&nbsp; weiter<br>\n&nbsp; Opferplatz1<br>\n*Programm<br>\n<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&#8222;Burg&#8220; und &#8222;Tempel&#8220; und so weiter sind dabei die Namen der Methoden, die im Programm aufgerufen werden. Jede Variation dieses Hauptprogramms besteht also aus bis zu 25 Aufrufen von Geb\u00e4udenamen bzw. &#8222;weiter&#8220; f\u00fcr ein leeres Feld. Die Reihenfolge der Geb\u00e4ude ist beliebig, so kann sich jeder Sch\u00fcler seine eigene Stadt zusammenstellen.<br>Die ganze Programmierarbeit steckt dabei nat\u00fcrlich in den Methoden, daf\u00fcr sieht das Programm selber sehr einfach aus.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">(Die Stadtmauer mit dem unvollst\u00e4ndigen Tor und die Methode &#8222;weiter&#8220; sind von mir. &#8222;Weiter&#8220; wird nach jedem Geb\u00e4ude aufgerufen und stellt fest, ob in der aktuellen Zeile noch Platz f\u00fcr ein Bauwerk ist oder ob man schon an der Stadtmauer angekommen ist, und beginnt notfalls eine neue Zeile.)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Gedacht hatte ich mir das so: Die Sch\u00fcler sollten \u00fcben, mit Robot Karol zu arbeiten, und zwar strukturiert. Das hei\u00dft, dass man Arbeitsauftr\u00e4ge an den Roboter (&#8222;Baue einen Turm&#8220;) in Unteraufgaben teilt, und daf\u00fcr jeweils eine eigene Methode schreibt (&#8222;Baue eine Fl\u00e4che&#8220;). Und dass man erkennt, wann sich Elemente wiederholen, und dazu dann Wiederholungsschleifen nutzt.<br>Das hatten wir alles schon ge\u00fcbt. Aber hier hat das leider \u00fcberhaupt nicht geklappt. Wildes Drauflosschreiben, und das soll es ja eigentlich gar nicht sein. N\u00e4chstes Mal muss ich das anders machen, vorher besser erkl\u00e4ren, wie man so eine Aufgabe angeht.<br>Denn ich m\u00f6chte das schon noch einmal machen: Das andere Ziel ist n\u00e4mlich erf\u00fcllt, dass Sch\u00fcler sehen, dass man eine gro\u00dfe Aufgabe (&#8222;Stadt bauen&#8220;) in Teilaufgaben zerlegen kann, so dass jedes Team f\u00fcr einen Teil verantwortlich ist. Und das am Schluss etwas herauskommt, was man alleine nicht geschafft h\u00e4tte.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Gedacht<\/em> ist Robot Karol daf\u00fcr nat\u00fcrlich \u00fcberhaupt nicht. Man kann keine Hohlr\u00e4ume bauen, also keine H\u00e4use, keine D\u00e4cher. Schade ist auch, dass die Karol-Welt auf 100&#215;100 Felder und H\u00f6he 10 begrenzt ist. Sonst h\u00e4tten wir bestimmt einen tollen Vulkan in der Mitte, und wenn ich den selber h\u00e4tte schreiben m\u00fcssen&#8230;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Vielleicht sollte ich die Stadtmauer und den gelben Rand weglassen und einen (gelben) Fu\u00dfweg einbauen&#8230; oder eine Methode, mit der man die Geb\u00e4ude jeweils um 90\u00b0 drehen kann, das gibt dann jeweils noch mehr Spielm\u00f6glichkeiten. Oder 30&#215;15 und 15&#215;30 Geb\u00e4ude, damit die Stadt etwas weniger geordnet ausschaut.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Nachtrag: <a href=\"https:\/\/www.herr-rau.de\/wordpress\/archiv\/ROBOT_KAROL_STADT.zip\">Das Projekt als Zip-Datei,<\/a>, falls jemand damit herumspielen m\u00f6chte.<\/em><\/p>\n\n\n\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ssl-vg03.met.vgwort.de\/na\/65d696f8fa3241dab3e7104e0b3adab4\" alt=\"\" width=\"1\" height=\"1\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>(38 Kommentare.) Robot Karol ist ein weit verbreitetes Programm f\u00fcr den Anfangsunterricht Informatik. (Herunterladen und Informationen.) Man bewegt darin einen Roboter, der nur die Anweisungen Linksdrehen, Rechtsdrehen, Vorw\u00e4rtsschritt, Hinlegen und Aufheben (jeweils eines Steines bzw. einer Marke) versteht. Man kann kann aus diesen elementaren Anweisungen aber neue Anweisungen zusammenstellen und diesen Namen geben: zum Beispiel [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[25,5],"tags":[227,54],"class_list":["post-598","post","type-post","status-publish","format-standard","hentry","category-informatik","category-schule-mal-gemacht","tag-informatik","tag-robot-karol"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/www.herr-rau.de\/wordpress\/wp-json\/wp\/v2\/posts\/598","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.herr-rau.de\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.herr-rau.de\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.herr-rau.de\/wordpress\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.herr-rau.de\/wordpress\/wp-json\/wp\/v2\/comments?post=598"}],"version-history":[{"count":2,"href":"https:\/\/www.herr-rau.de\/wordpress\/wp-json\/wp\/v2\/posts\/598\/revisions"}],"predecessor-version":[{"id":61051,"href":"https:\/\/www.herr-rau.de\/wordpress\/wp-json\/wp\/v2\/posts\/598\/revisions\/61051"}],"wp:attachment":[{"href":"https:\/\/www.herr-rau.de\/wordpress\/wp-json\/wp\/v2\/media?parent=598"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.herr-rau.de\/wordpress\/wp-json\/wp\/v2\/categories?post=598"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.herr-rau.de\/wordpress\/wp-json\/wp\/v2\/tags?post=598"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}