Make Me Happy - Mach Mich Glücklich
Bevor es los geht, müssen wir ein Projekt anlegen...
Jetzt kann es los gehen...
Das kann dann zum Beispiel so aussehen:
Tipp
Du kannst dein Programm speichern, indem du auf "File" und dann "Save Project" klickst.
Über "Load Project" kannst du ein Projekt hochladen.
Du solltest jetzt drei verschiedene Kostüme für deinen Charakter haben.
Damit du zwischen den Charakteren wechseln kannst, programmiere folgendes:
Fertig sollte dein Programm so aussehen:
Nächste Aufgabe
Tipp
Anderen Inhalte oder Programme zu erklären ist super, denn ...
...man verinnerlicht die Inhalte besser.
...man merkt, was man doch noch nicht ganz verstanden hat.
...man nimmt die Perspektive eines anderes ein und es kommen mehr Fragen auf.
Hinweis
Klicke auf die Weltkugel, um die Sprache in Scratch zu ändern:
Beachte: Die Blöcke aus dem Bereich More Blocks bleiben auf Englisch.
Habt ihr euch überlegt, wie ihr den Code verbessern könnt?
Wenn ihr noch nicht wisst, wie ihr das, was ihr euch überlegt habt, in Code umsetzen könnt, ist das überhaupt nicht schlimm.
Folgend ein paar Anregungen:
So sieht das fertige Programm aus:
Nächste Aufgabe
Damit der Charakter auch bei unbekannten Eingaben, nette von bösen unterscheiden kann, müssen wir ihn trainieren. Mehr dazu auf den nächsten Seiten.
Tipps
Jetzt möchten wir unseren Charakter "intelligent" machen...
Bisher kann unser Charakter mit seinem Programm nur bekannte - also vorprogrammierte - Eingaben erkennen und entsprechend reagieren. Damit unser Charakter auch auf unbekannte Eingaben reagieren kann, müssen wir ihn trainieren. Dafür müssen wir zuerst ein sogenanntes Modell anlegen:
In dem Modell erstellen wir nun sogenannte Label. Das sind Kategorien, die wir unterscheiden wollen. In unserem Fall zum Beispiel "Nett" und "Gemein".
Das kann dann so aussehen:
Nächste Aufgabe
Probiere es zuerst selbst. Auf der nächsten Folie findest du eine Schritt für Schritt Anleitung.
Beachte!
Wenn du dein Programm speicherst, wird nicht automatisch auch dein trainiertes Modell gespeichert. Außerdem wird das Modell automatisch nach 24 Stunden gelöscht. Es kann also sein, dass du ein neues Modell anlegen und trainieren musst.
Jetzt möchten wir unseren Charakter "intelligent" machen...
Wenn das Model fertig trainiert ist, müssen wir unseren Code noch anpassen.
So sieht das Programm jetzt aus:
Nächste Aufgabe
Probiere es zuerst selbst. Auf der nächsten Folie findest du eine Schritt für Schritt Anleitung.
Tipp
Das Training kann einige Minuten dauern. Während das Model trainiert, damit dein Charakter intelligent handeln kann, kannst auch du dein Wissen erweitern. Auf der Seite wird ein Quiz angezeigt inklusive Erklärungen für die Antworten. Ggf. musst du etwas herunterscrollen.
Jetzt möchten wir unseren Charakter "intelligent" machen...
Hier siehst du das fertige Programm:
Hinweis
Sieht deine Lösung anders aus? Kein Problem! Beim Programmieren gibt es oft mehrere Ansätze, um dieselbe Lösung zu erhalten. #VieleWegeFührenNachRom
Beachte
Wenn du die Beispiele hinzufügst, sind diese noch nicht im trainierten Model enthalten. Dafür musst du über Learn&Test ein neues Model trainieren (s. vorherige Folie ).
Bist du schon fertig? Unglaublich!
Überlege, ob du dein Programm noch weiter pimpen kannst. Zum Beispiel so ...
Tipp
Beim Programmieren besteht ein Großteil der Zeit aus Suchen nach Lösungen im Internet. Es gibt (fast) immer jemanden, der das Problem schon mal hatte und einen Forenbeitrag aufgesetzt hat. Dort findet ihr dann häufig auch die Lösung. Ein tolles Forum ist zum Beispiel Stackoverflow. Hier findet ihr die neuesten Beiträge zu Scratch
Ansonsten:
Hier findest du ein cooles Tool, wo du künstliche Intelligenz und Bilderkennung testen kannst.
Wenn du einen Webcam hast, probiere dieses Tool oder dieses Tool.
Viel Spaß!
Nur als Lehrertipp
Infobox zu Verzweigungen
Um Eingaben zu unterscheiden hast du Verzweigungen verwendet:
Verzweigungen brauchst du immer dann, wenn du Fälle unterscheiden möchtest. Für die Fallunterscheidung kannst du Beliebiges vergleichen. Zum Beispiel Zahlen oder Texte.
Das Ergebnis ist immer Wahr oder Falsch. Nur, wenn eine Bedingung zutrifft (d.h. das Ergebnis wahr ist), werden die Anweisungen in dem Code-Block ausgeführt. Ansonsten nicht.
Mit Hilfe logischer Operatoren kannst du Fälle unterscheiden. Es gibt unter anderen folgende logische Operatoren:
Operator | Was macht der Operator? | Beispiel |
---|---|---|
Vergleiche | ||
Ist gleich | (wahr) oder (falsch) | |
Ist größer als | 2 > 1 (wahr) oder 1 > 1 (falsch) oder 1 > 2 (falsch) | |
Ist kleiner als | 1 < 2 (wahr) oder 1 < 1 (falsch) oder 2 < 1 (falsch) | |
Verknüpfungen | ||
Und - Ist nur wahr, wenn beide Bedingungen zutreffen. | zahl > 5 and zahl < 10 (True für 6,7,8,9) | |
Oder - Ist wahr, wenn eine der Bedingungen oder beide zutreffen. | zahl > 5 or zahl < 10 (True für 1,2,...,6,...,10,11,...) oder zahl < 5 or zahl > 10 (True für ...,3,4,11,12,...) |
|
Nicht - macht aus True, False und umgekehrt | not (1 != X) (True für x = 1) |
if 'Bedingung1':
'Befolge diese Anweisungen'
Wenn die Folie so bleibt ergänze ich die Beispiele mit Scratch Blöcken
Schleifen
Um den Code zu wiederholen hast du eine Schleife verwendet.
Generell kann mit Schleifen Beliebiges wiederholt werden. Du kannst Texte wiederholen, ebenso wie Zahlen oder beliebige Anweisungen.
Es kann definiert werden, wie oft die Befehlsfolge wiederholt werden soll: dauerhaft, mehrmals oder bis eine bestimmte Bedingung eintritt. In Scratch gibt es dazu folgende Blöcke:
Manchmal kann es vorkommen, dass Schleifen ungewolltes Verhalten zeigen, z. B. bei Endlosschleifen. Endlosschleifen sind meist ungewollte Dauerschleifen, in denen ein Programm “feststeckt”. Deswegen ist es immer wichtig, sich gut zu überlegen, wie die Abbruchbedingung lauten sollte. Um die Abbruchbedingung zu definieren, kannst du logische Operatoren verwenden.
Achtung! Verzweigungen werden häufig mit Schleifen verwechselt. Folgende Unterschiede:
Wiederholt die Anweisungen in der Schleife dauerhaft. | |
Wiederholt die Anweisungen in der Schleife mehrmals. In diesem Fall 10 Mal. | |
Wiederholt die Anweisungen in der Schleife bis eine bestimmte Bedingung eintritt. |