<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://staging.moocwiki.org/index.php?action=history&amp;feed=atom&amp;title=IM6_-_KI_und_Programmieren</id>
	<title>IM6 - KI und Programmieren - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://staging.moocwiki.org/index.php?action=history&amp;feed=atom&amp;title=IM6_-_KI_und_Programmieren"/>
	<link rel="alternate" type="text/html" href="https://staging.moocwiki.org/index.php?title=IM6_-_KI_und_Programmieren&amp;action=history"/>
	<updated>2026-09-13T10:17:44Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in MOOCsWiki Staging</subtitle>
	<generator>MediaWiki 1.46.0</generator>
	<entry>
		<id>https://staging.moocwiki.org/index.php?title=IM6_-_KI_und_Programmieren&amp;diff=52727&amp;oldid=prev</id>
		<title>Glanz: aiMOOC über GPT aiMOOC Action erstellt</title>
		<link rel="alternate" type="text/html" href="https://staging.moocwiki.org/index.php?title=IM6_-_KI_und_Programmieren&amp;diff=52727&amp;oldid=prev"/>
		<updated>2026-09-13T06:48:48Z</updated>

		<summary type="html">&lt;p&gt;aiMOOC über GPT aiMOOC Action erstellt&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{T}}&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= IM6 - KI und Programmieren =&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Einleitung =&lt;br /&gt;
&lt;br /&gt;
Programmieren bedeutet, einem Computer klare Anweisungen zu geben. Dabei musst Du nicht sofort lange Textzeilen schreiben. In grafischen Programmierumgebungen wie [[Scratch (Programmiersprache)|Scratch]] kannst Du farbige Blöcke zusammensetzen. So erkennst Du leichter, in welcher Reihenfolge etwas passiert, wann sich Befehle wiederholen und unter welcher Bedingung ein Programm anders reagieren soll.&lt;br /&gt;
&lt;br /&gt;
[[Datei:Scratch Beginner Scripts.png|500px|rahmenlos|center]]&lt;br /&gt;
&lt;br /&gt;
In diesem aiMOOC lernst Du, wie [[Künstliche Intelligenz|Künstliche Intelligenz]], kurz &amp;#039;&amp;#039;&amp;#039;KI&amp;#039;&amp;#039;&amp;#039;, beim Programmieren helfen kann. Eine KI kann zum Beispiel eine Codezeile erklären, eine Vermutung über einen Fehler prüfen oder zwei Lösungsideen vergleichen. Sie kann dabei nützliche Vorschläge machen, aber auch etwas missverstehen oder eine falsche Lösung vorschlagen. Deshalb gilt in diesem Kurs ein wichtiger Grundsatz:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;KI kann Dir beim Denken helfen, aber sie ersetzt Dein eigenes Verständnis nicht.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Du sollst am Ende nicht nur sagen können, &amp;#039;&amp;#039;&amp;#039;welcher&amp;#039;&amp;#039;&amp;#039; Vorschlag funktioniert. Du sollst auch erklären können, &amp;#039;&amp;#039;&amp;#039;warum&amp;#039;&amp;#039;&amp;#039; er funktioniert.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Lernziele ==&lt;br /&gt;
&lt;br /&gt;
Nach diesem aiMOOC kannst Du einfache Programme lesen, testen und verändern. Du kannst grafische Programmblöcke in Scratch sinnvoll anordnen und wichtige Begriffe wie [[Algorithmus]], [[Schleife]], [[Bedingung]], [[Variable]] und [[Debugging]] erklären. Außerdem lernst Du drei konkrete Möglichkeiten kennen, eine KI sinnvoll beim Programmieren einzusetzen:&lt;br /&gt;
&lt;br /&gt;
# [[Code erklären|Codezeile erklären]]: Du lässt Dir eine einzelne Zeile oder einen Block verständlich erklären und prüfst die Erklärung am Programm.&lt;br /&gt;
# [[Fehlersuche|Fehlerhypothese prüfen]]: Du beschreibst einen Fehler und eine Vermutung dazu. Anschließend testest Du, ob die Vermutung stimmt.&lt;br /&gt;
# [[Problemlösen|Alternative Lösung vergleichen]]: Du vergleichst zwei Lösungswege und entscheidest anhand von Verständlichkeit, Aufwand und Ergebnis.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Programmieren mit grafischen Blöcken =&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Was ist ein Programm? ==&lt;br /&gt;
&lt;br /&gt;
Ein [[Computerprogramm|Programm]] ist eine Folge von Anweisungen, die ein Computer ausführt. Diese Anweisungen müssen eindeutig sein. Ein Computer errät normalerweise nicht, was Du gemeint hast. Wenn eine Figur zehn Schritte gehen soll, braucht das Programm genau den passenden Befehl. Soll sie diese Bewegung immer wieder ausführen, brauchst Du zusätzlich eine Wiederholung.&lt;br /&gt;
&lt;br /&gt;
In Scratch werden solche Befehle als Blöcke dargestellt. Du setzt sie ähnlich wie Puzzleteile zusammen. Dadurch werden viele Schreibfehler vermieden. Trotzdem können Denkfehler entstehen. Ein Programm kann also syntaktisch zusammenpassen und trotzdem etwas anderes tun, als Du möchtest.&lt;br /&gt;
&lt;br /&gt;
[[Datei:Scratchblocks.png|500px|rahmenlos|center]]&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Wichtige Bausteine ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Baustein&lt;br /&gt;
! Bedeutung&lt;br /&gt;
! Einfaches Beispiel&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Ereignis&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| Startet einen Programmablauf.&lt;br /&gt;
| Wenn die grüne Flagge angeklickt wird, beginnt die Figur sich zu bewegen.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Anweisung&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| Sagt dem Computer, was er tun soll.&lt;br /&gt;
| Gehe 10 Schritte.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Schleife&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| Wiederholt eine oder mehrere Anweisungen.&lt;br /&gt;
| Wiederhole 10-mal: Gehe 10 Schritte.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Bedingung&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| Prüft, ob etwas gilt, und entscheidet dann.&lt;br /&gt;
| Wenn der Rand berührt wird, pralle ab.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Variable&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| Speichert einen veränderbaren Wert.&lt;br /&gt;
| Die Variable Punkte startet bei 0 und wird beim Treffer erhöht.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Reihenfolge ist wichtig ==&lt;br /&gt;
&lt;br /&gt;
Computer führen Befehle nach bestimmten Regeln aus. Schon eine kleine Änderung der Reihenfolge kann das Ergebnis verändern. Betrachte diese beiden Abläufe:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Lösung A&lt;br /&gt;
! Lösung B&lt;br /&gt;
|-&lt;br /&gt;
| Setze Punkte auf 0 → erhöhe Punkte um 1 → zeige Punkte&lt;br /&gt;
| Erhöhe Punkte um 1 → setze Punkte auf 0 → zeige Punkte&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Bei Lösung A wird am Ende &amp;#039;&amp;#039;&amp;#039;1&amp;#039;&amp;#039;&amp;#039; angezeigt. Bei Lösung B wird der Wert nach dem Erhöhen wieder auf &amp;#039;&amp;#039;&amp;#039;0&amp;#039;&amp;#039;&amp;#039; gesetzt. Beide Abläufe enthalten dieselben Grundbefehle, aber die Reihenfolge ist verschieden.&lt;br /&gt;
&lt;br /&gt;
Genau deshalb ist [[Algorithmisches Denken|algorithmisches Denken]] wichtig: Du überlegst nicht nur, welche Bausteine gebraucht werden, sondern auch, wann und in welcher Reihenfolge sie ausgeführt werden.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Ein laufendes Scratch-Programm beobachten ==&lt;br /&gt;
&lt;br /&gt;
[[Datei:Scratch Screenshot, Running Script.png|500px|rahmenlos|center]]&lt;br /&gt;
&lt;br /&gt;
Beim Testen beobachtest Du, was tatsächlich passiert. Das ist wichtiger als die Frage, was Du glaubst, programmiert zu haben. Gute Programmierende vergleichen deshalb immer:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Erwartung → tatsächliches Ergebnis → mögliche Ursache → Änderung → neuer Test&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
{{#ev:youtube|   https://www.youtube.com/watch?v=ymtzVAkYbtM   |500|center}}&lt;br /&gt;
&lt;br /&gt;
Das Video zeigt am Beispiel von Scratch, wie Ereignisse einen Programmablauf starten können. Achte besonders darauf, wodurch ein Skript beginnt und welche Blöcke danach ausgeführt werden.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= KI als Hilfe beim Programmieren =&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Was kann eine KI hier leisten? ==&lt;br /&gt;
&lt;br /&gt;
Eine textbasierte KI kann Sprache und Programmcode verarbeiten und daraus Antworten erzeugen. Beim Lernen kann sie zum Beispiel Begriffe erklären, Code beschreiben, Fehlerideen nennen oder mehrere Lösungen gegenüberstellen. Die Antwort entsteht jedoch nicht dadurch, dass die KI Dein Programm wie ein Mensch vollständig „versteht“. Ein Vorschlag kann passend sein, teilweise passen oder falsch sein.&lt;br /&gt;
&lt;br /&gt;
Deshalb arbeitest Du in diesem Kurs mit der Regel:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Fragen → Antwort prüfen → selbst testen → selbst erklären&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Eine KI-Antwort ist also kein Endergebnis, sondern ein &amp;#039;&amp;#039;&amp;#039;Vorschlag zur Prüfung&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Gute Fragen an eine KI ==&lt;br /&gt;
&lt;br /&gt;
Eine hilfreiche Frage enthält möglichst viel von dem, was für die Aufgabe wichtig ist. Statt nur zu schreiben „Mein Code geht nicht“, ist zum Beispiel diese Beschreibung besser:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
Ich programmiere in Scratch. Beim Klick auf die grüne Flagge soll meine Figur zehnmal je 10 Schritte gehen. Sie bewegt sich aber nur einmal. Ich vermute, dass eine Wiederholung fehlt. Erkläre mir zuerst meine Vermutung und nenne danach einen passenden Scratch-Block. Gib mir außerdem einen Test, mit dem ich prüfen kann, ob die Lösung funktioniert.&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Eine solche Anfrage nennt die Programmierumgebung, das gewünschte Verhalten, das tatsächliche Verhalten und eine eigene Vermutung. Dadurch kannst Du die Antwort leichter beurteilen.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Was Du einer KI nicht geben solltest ==&lt;br /&gt;
&lt;br /&gt;
Auch beim Programmieren gelten Regeln für [[Datenschutz]] und einen sicheren Umgang mit digitalen Werkzeugen. Gib keine Passwörter, privaten Adressen, Telefonnummern oder andere unnötige persönliche Daten in ein KI-System ein. Für eine Fehlersuche reichen meistens der relevante Programmabschnitt und eine Beschreibung des Problems.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Use-Case 1: Eine Codezeile erklären lassen =&lt;br /&gt;
&lt;br /&gt;
Manchmal sieht eine Codezeile einfach aus, aber ihre Wirkung ist noch unklar. Dann kann eine KI beim Erklären helfen.&lt;br /&gt;
&lt;br /&gt;
Betrachte diese einfache Zeile:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
punkte = punkte + 1&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Eine passende KI-Erklärung könnte lauten:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;„Nimm den bisherigen Wert von punkte, addiere 1 und speichere das Ergebnis wieder unter dem Namen punkte.“&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
In Scratch entspricht diese Idee ungefähr dem Block:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;ändere Punkte um 1&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Wichtig ist, dass Du die Erklärung nicht nur liest. Teste sie mit Beispielen:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Wert vorher&lt;br /&gt;
! ausgeführte Anweisung&lt;br /&gt;
! Wert nachher&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| Punkte um 1 erhöhen&lt;br /&gt;
| 1&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| Punkte um 1 erhöhen&lt;br /&gt;
| 5&lt;br /&gt;
|-&lt;br /&gt;
| 9&lt;br /&gt;
| Punkte um 1 erhöhen&lt;br /&gt;
| 10&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Wenn Du diese Veränderung selbst vorhersagen kannst, hast Du die Codezeile verstanden.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Eine Erklärung prüfen ==&lt;br /&gt;
&lt;br /&gt;
Angenommen, eine KI behauptet:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;„Die Zeile setzt die Punkte immer auf 1.“&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Das klingt zunächst vielleicht plausibel, ist aber falsch. Mit dem Testwert 4 kannst Du zeigen, dass danach 5 entsteht. Ein einziges gutes Gegenbeispiel kann also reichen, um eine falsche Erklärung zu entdecken.&lt;br /&gt;
&lt;br /&gt;
Das ist ein wichtiger Lernschritt: &amp;#039;&amp;#039;&amp;#039;Du prüfst die KI mit Deinem Wissen und mit Tests.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Use-Case 2: Eine Fehlerhypothese prüfen =&lt;br /&gt;
&lt;br /&gt;
[[Debugging]] bedeutet, Fehler systematisch zu suchen und zu beheben. Dabei ist es oft hilfreich, zuerst eine &amp;#039;&amp;#039;&amp;#039;Fehlerhypothese&amp;#039;&amp;#039;&amp;#039; zu bilden. Eine Hypothese ist eine begründete Vermutung.&lt;br /&gt;
&lt;br /&gt;
Beispiel:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Ziel:&amp;#039;&amp;#039;&amp;#039; Eine Figur soll sich dauerhaft bewegen und am Rand umdrehen.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Beobachtung:&amp;#039;&amp;#039;&amp;#039; Die Figur bewegt sich nur ein einziges Mal.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Hypothese:&amp;#039;&amp;#039;&amp;#039; Die Bewegungsanweisung liegt nicht in einer Dauerschleife.&lt;br /&gt;
&lt;br /&gt;
Eine KI könnte dazu sagen:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;„Die Hypothese passt zur Beobachtung. Prüfe, ob der Bewegungsblock innerhalb eines Wiederhole-fortlaufend-Blocks liegt.“&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Das ist noch kein Beweis. Jetzt musst Du testen.&lt;br /&gt;
&lt;br /&gt;
# Starte das Programm und beobachte die Figur.&lt;br /&gt;
# Setze die Bewegungsanweisung in eine Dauerschleife.&lt;br /&gt;
# Starte das Programm erneut.&lt;br /&gt;
# Prüfe, ob sich genau das Verhalten verändert hat, das zu Deiner Hypothese gehört.&lt;br /&gt;
&lt;br /&gt;
Wenn sich die Figur jetzt dauerhaft bewegt, wird Deine Vermutung gestützt. Falls nicht, musst Du eine neue Ursache untersuchen.&lt;br /&gt;
&lt;br /&gt;
[[Datei:Scratch 3.0 Screenshot, Gravity Script.png|500px|rahmenlos|center]]&lt;br /&gt;
&lt;br /&gt;
Auch bei längeren Programmen hilft es, nicht alles gleichzeitig zu verändern. Ändere möglichst nur eine vermutete Ursache und teste anschließend erneut.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Fehlerbeispiel: Falsche Bedingung ==&lt;br /&gt;
&lt;br /&gt;
Ein Spiel soll beendet werden, wenn die Variable &amp;#039;&amp;#039;&amp;#039;Leben&amp;#039;&amp;#039;&amp;#039; den Wert 0 erreicht.&lt;br /&gt;
&lt;br /&gt;
Fehlerhafte Idee:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Wenn Leben größer als 0 ist, dann sage „Game Over“.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Was passiert? Das Spiel meldet „Game Over“, obwohl noch Leben vorhanden sind.&lt;br /&gt;
&lt;br /&gt;
Eine sinnvolle Fehlerhypothese lautet:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Der Vergleich in der Bedingung ist falsch herum.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Eine KI kann nun gebeten werden, diese Hypothese zu prüfen. Du solltest anschließend aber selbst erklären können, warum eine Bedingung wie &amp;#039;&amp;#039;&amp;#039;Leben = 0&amp;#039;&amp;#039;&amp;#039; besser zum gewünschten Verhalten passt.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Fehlerbeispiel: Befehl am falschen Ort ==&lt;br /&gt;
&lt;br /&gt;
Ein Punktezähler soll bei jedem eingesammelten Stern um 1 steigen. Der Block &amp;#039;&amp;#039;&amp;#039;ändere Punkte um 1&amp;#039;&amp;#039;&amp;#039; liegt aber außerhalb der Abfrage, ob der Stern berührt wird. Dadurch steigen die Punkte ständig.&lt;br /&gt;
&lt;br /&gt;
Die Ursache ist hier nicht ein falscher Zahlenwert, sondern die &amp;#039;&amp;#039;&amp;#039;Position des Befehls im Programmablauf&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
Eine gute Frage an eine KI wäre:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
Mein Punktestand steigt ständig. Er soll nur steigen, wenn die Figur den Stern berührt. Ich vermute, dass der Block „ändere Punkte um 1“ an der falschen Stelle liegt. Welche Beobachtung würde diese Vermutung bestätigen?&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die wichtigste Leistung bleibt Deine eigene: Du musst den Zusammenhang zwischen Bedingung und Punktezähler verstehen.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Use-Case 3: Alternative Lösungen vergleichen =&lt;br /&gt;
&lt;br /&gt;
Für ein Programmierproblem gibt es oft mehrere funktionierende Lösungen. Eine KI kann helfen, Unterschiede sichtbar zu machen.&lt;br /&gt;
&lt;br /&gt;
Aufgabe: Eine Figur soll 100 Schritte laufen.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Lösung A:&amp;#039;&amp;#039;&amp;#039; Einmal „gehe 100 Schritte“.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Lösung B:&amp;#039;&amp;#039;&amp;#039; Zehnmal „gehe 10 Schritte“.&lt;br /&gt;
&lt;br /&gt;
Beide Lösungen können zum gleichen Endpunkt führen. Trotzdem sind sie nicht in jeder Situation gleich gut.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Frage&lt;br /&gt;
! Lösung A&lt;br /&gt;
! Lösung B&lt;br /&gt;
|-&lt;br /&gt;
| Ist sie kurz?&lt;br /&gt;
| Ja&lt;br /&gt;
| Etwas länger&lt;br /&gt;
|-&lt;br /&gt;
| Zeigt sie eine Wiederholung?&lt;br /&gt;
| Nein&lt;br /&gt;
| Ja&lt;br /&gt;
|-&lt;br /&gt;
| Kann zwischen den Schritten leicht noch etwas anderes passieren?&lt;br /&gt;
| Weniger flexibel&lt;br /&gt;
| Flexibler&lt;br /&gt;
|-&lt;br /&gt;
| Ist sie gut zum Lernen von Schleifen?&lt;br /&gt;
| Weniger&lt;br /&gt;
| Ja&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Eine KI könnte Lösung A als „effizienter“ bezeichnen, weil sie weniger Blöcke braucht. Für eine Lernaufgabe über Schleifen kann Lösung B trotzdem sinnvoller sein. Die beste Lösung hängt also vom &amp;#039;&amp;#039;&amp;#039;Ziel&amp;#039;&amp;#039;&amp;#039; ab.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Vergleich statt blindes Übernehmen ==&lt;br /&gt;
&lt;br /&gt;
Wenn eine KI zwei Lösungen vorschlägt, kannst Du immer drei Fragen stellen:&lt;br /&gt;
&lt;br /&gt;
# Erreichen beide Lösungen wirklich dasselbe Ergebnis?&lt;br /&gt;
# Welche Lösung kann ich selbst besser erklären?&lt;br /&gt;
# Welche Lösung passt besser zu meiner Aufgabe?&lt;br /&gt;
&lt;br /&gt;
Die kürzeste Lösung ist nicht automatisch die beste. Für Anfängerinnen und Anfänger kann eine etwas längere, aber gut sichtbare Lösung verständlicher sein.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= KI-Codevorschläge richtig prüfen =&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Beispiel 1: Ein sinnvoller Vorschlag ==&lt;br /&gt;
&lt;br /&gt;
Aufgabe: Nach dem Berühren eines Sterns soll der Punktestand steigen.&lt;br /&gt;
&lt;br /&gt;
Möglicher KI-Vorschlag in Scratch-Idee:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Wenn Stern berührt → ändere Punkte um 1&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Dieser Vorschlag klingt passend. Prüfe trotzdem:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Wird der Punktestand nur einmal erhöht oder bei jedem Bildwechsel immer wieder, solange die Figuren sich berühren?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Vielleicht brauchst Du zusätzlich eine kurze Pause, einen Positionswechsel des Sterns oder eine andere Logik. Ein Vorschlag kann also grundsätzlich richtig und trotzdem noch unvollständig sein.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Beispiel 2: Ein unpassender Vorschlag ==&lt;br /&gt;
&lt;br /&gt;
Aufgabe: Die Figur soll sich mit der Pfeiltaste nach rechts bewegen.&lt;br /&gt;
&lt;br /&gt;
Unpassender KI-Vorschlag:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Wenn Leertaste gedrückt → gehe 10 Schritte&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Der Code kann technisch funktionieren, erfüllt aber die Aufgabe nicht, weil die falsche Taste verwendet wird.&lt;br /&gt;
&lt;br /&gt;
Das zeigt: &amp;#039;&amp;#039;&amp;#039;Ein fehlerfreies Programm kann trotzdem die falsche Aufgabe lösen.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Beispiel 3: Ein Vorschlag mit Denkfehler ==&lt;br /&gt;
&lt;br /&gt;
Aufgabe: Bei 10 Punkten soll die Figur „Gewonnen!“ sagen.&lt;br /&gt;
&lt;br /&gt;
Fehlerhafter Vorschlag:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Wenn Punkte kleiner als 10 → sage „Gewonnen!“&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Hier muss die Bedingung zum Ziel passen. Du kannst gezielt mit Testwerten prüfen:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Punkte&lt;br /&gt;
! Soll „Gewonnen!“ erscheinen?&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| Nein&lt;br /&gt;
|-&lt;br /&gt;
| 9&lt;br /&gt;
| Nein&lt;br /&gt;
|-&lt;br /&gt;
| 10&lt;br /&gt;
| Ja&lt;br /&gt;
|-&lt;br /&gt;
| 12&lt;br /&gt;
| Je nach Spielregel möglicherweise bereits gewonnen&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Mit solchen [[Testfall|Testfällen]] prüfst Du nicht nur KI-Vorschläge, sondern generell Programme.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Eine einfache Debugging-Strategie =&lt;br /&gt;
&lt;br /&gt;
Wenn etwas nicht funktioniert, hilft ein fester Ablauf.&lt;br /&gt;
&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;Ziel beschreiben&amp;#039;&amp;#039;&amp;#039;: Was soll passieren?&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;Beobachten&amp;#039;&amp;#039;&amp;#039;: Was passiert tatsächlich?&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;Hypothese bilden&amp;#039;&amp;#039;&amp;#039;: Welche Ursache könnte den Unterschied erklären?&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;Eine Sache ändern&amp;#039;&amp;#039;&amp;#039;: Verändere nur den vermuteten Fehler.&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;Testen&amp;#039;&amp;#039;&amp;#039;: Starte das Programm erneut.&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;Ergebnis erklären&amp;#039;&amp;#039;&amp;#039;: Was zeigt der Test?&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;Falls nötig neue Hypothese bilden&amp;#039;&amp;#039;&amp;#039;: Suche erst dann weiter.&lt;br /&gt;
&lt;br /&gt;
Eine KI kann bei den Schritten 2 bis 5 Ideen liefern. Schritt 6 ist für Dein Lernen besonders wichtig: &amp;#039;&amp;#039;&amp;#039;Du formulierst selbst, was Du herausgefunden hast.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= KI-Antworten bewerten =&lt;br /&gt;
&lt;br /&gt;
Eine gute Antwort ist nicht nur freundlich oder lang. Fürs Programmieren sollte sie überprüfbar sein.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Prüffrage&lt;br /&gt;
! Warum ist sie wichtig?&lt;br /&gt;
|-&lt;br /&gt;
| Passt die Antwort zu meiner Programmiersprache oder Programmierumgebung?&lt;br /&gt;
| Ein Python-Vorschlag hilft nicht direkt, wenn Du nur Scratch-Blöcke einsetzen sollst.&lt;br /&gt;
|-&lt;br /&gt;
| Passt die Antwort genau zu meinem Ziel?&lt;br /&gt;
| Technisch funktionierender Code kann trotzdem die falsche Aufgabe lösen.&lt;br /&gt;
|-&lt;br /&gt;
| Kann ich den Vorschlag testen?&lt;br /&gt;
| Ein Test zeigt, ob die Wirkung tatsächlich eintritt.&lt;br /&gt;
|-&lt;br /&gt;
| Kann ich erklären, warum der Vorschlag funktioniert?&lt;br /&gt;
| Erst dann wird aus Übernehmen echtes Verstehen.&lt;br /&gt;
|-&lt;br /&gt;
| Gibt es eine einfachere Lösung?&lt;br /&gt;
| Eine verständliche Lösung ist beim Lernen oft besser als unnötig komplizierter Code.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= KI verstehen: Sie ist kein allwissender Programmierprofi =&lt;br /&gt;
&lt;br /&gt;
Eine generative KI erzeugt Antworten auf Grundlage gelernter Muster. Sie kann hilfreiche Erklärungen und Codeideen liefern. Sie garantiert aber nicht, dass jede Aussage korrekt ist. Besonders bei unklaren Aufgaben kann sie Annahmen treffen, die Du gar nicht gemeint hast.&lt;br /&gt;
&lt;br /&gt;
Darum ist es sinnvoll, einer KI Grenzen zu setzen:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
Erkläre nur den markierten Programmteil. Verwende Begriffe für Klasse 6. Nenne zuerst meine Vermutung, dann einen Test. Gib nicht sofort die vollständige Lösung.&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
So wird die KI eher zum Lernhelfer als zum Lösungsautomaten.&lt;br /&gt;
&lt;br /&gt;
{{#ev:youtube|   https://www.youtube.com/watch?v=_80pKGuyKWc   |500|center}}&lt;br /&gt;
&lt;br /&gt;
Das Video der Sendung mit der Maus erklärt kindgerecht, was Künstliche Intelligenz ist. Überlege beim Anschauen: Welche Aufgaben kann eine KI bearbeiten, und warum ist eine erzeugte Antwort trotzdem etwas, das Du prüfen solltest?&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Mini-Projekt: Der Sternesammler =&lt;br /&gt;
&lt;br /&gt;
Du programmierst ein kleines Scratch-Spiel. Eine Figur bewegt sich über die Bühne und sammelt Sterne. Jeder berührte Stern erhöht den Punktestand.&lt;br /&gt;
&lt;br /&gt;
Das Grundmodell lautet:&lt;br /&gt;
&lt;br /&gt;
# Beim Start wird &amp;#039;&amp;#039;&amp;#039;Punkte&amp;#039;&amp;#039;&amp;#039; auf 0 gesetzt.&lt;br /&gt;
# Die Figur kann mit Tasten gesteuert werden.&lt;br /&gt;
# Wenn die Figur einen Stern berührt, steigt &amp;#039;&amp;#039;&amp;#039;Punkte&amp;#039;&amp;#039;&amp;#039; um 1.&lt;br /&gt;
# Der Stern erscheint danach an einer neuen Position.&lt;br /&gt;
# Bei 10 Punkten erscheint eine Gewinnmeldung.&lt;br /&gt;
&lt;br /&gt;
Baue zuerst selbst eine einfache Version. Nutze eine KI erst dann für eine gezielte Frage, zum Beispiel:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;„Meine Punkte steigen manchmal mehrfach, obwohl ich einen Stern nur einmal berühre. Nenne zwei mögliche Ursachen, aber gib mir noch keine fertige Lösung.“&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Prüfe anschließend jede Ursache einzeln.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Drei KI-Rollen im Mini-Projekt ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! KI-Rolle&lt;br /&gt;
! Beispiel&lt;br /&gt;
! Deine Aufgabe&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Erklärhilfe&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| „Was bedeutet der Block ändere Punkte um 1?“&lt;br /&gt;
| Erkläre danach mit eigenen Worten und teste mit zwei Startwerten.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Fehlerhilfe&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| „Ich vermute, dass der Berührungsblock zu oft ausgeführt wird. Wie kann ich das prüfen?“&lt;br /&gt;
| Formuliere einen Test und beobachte das Ergebnis.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Vergleichshilfe&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| „Vergleiche: Stern verstecken und neu platzieren oder kurz warten.“&lt;br /&gt;
| Entscheide, welche Lösung zu Deinem Spiel besser passt, und begründe.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Merksätze =&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Ein Programm ist eine genaue Folge von Anweisungen.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Ein Test vergleicht Erwartung und tatsächliches Verhalten.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Ein Fehler ist eine Gelegenheit, den Programmablauf besser zu verstehen.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Eine KI-Antwort ist ein Vorschlag, kein Beweis.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Wenn Du eine Lösung nicht erklären kannst, solltest Du sie noch nicht einfach übernehmen.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Interaktive Aufgaben =&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Quiz: Teste Dein Wissen ==&lt;br /&gt;
&lt;br /&gt;
{{MC}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Wofür eignet sich KI beim Programmieren in diesem Kurs besonders?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(Zum Erklären Prüfen und Vergleichen)&lt;br /&gt;
(!Zum blinden Übernehmen jeder Lösung)&lt;br /&gt;
(!Zum Ersetzen aller eigenen Tests)&lt;br /&gt;
(!Zum Vermeiden von Verständnis)&lt;br /&gt;
&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{MC}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Was ist eine Schleife in einem Programm?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(Eine Wiederholung von Anweisungen)&lt;br /&gt;
(!Ein gespeichertes Bild)&lt;br /&gt;
(!Eine Fehlermeldung)&lt;br /&gt;
(!Eine Internetverbindung)&lt;br /&gt;
&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{MC}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Was solltest Du nach einem KI-Codevorschlag tun?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(Den Vorschlag testen und erklären)&lt;br /&gt;
(!Den Vorschlag sofort abgeben)&lt;br /&gt;
(!Alle eigenen Ideen löschen)&lt;br /&gt;
(!Den Code nie mehr verändern)&lt;br /&gt;
&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{MC}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Was ist eine Fehlerhypothese?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(Eine begründete Vermutung über eine Fehlerursache)&lt;br /&gt;
(!Eine sichere richtige Lösung)&lt;br /&gt;
(!Ein Name für eine Spielfigur)&lt;br /&gt;
(!Ein zufälliger Programmblock)&lt;br /&gt;
&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{MC}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Warum sind Testfälle nützlich?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(Sie prüfen wie sich ein Programm bei bestimmten Werten verhält)&lt;br /&gt;
(!Sie ersetzen das Programmieren vollständig)&lt;br /&gt;
(!Sie machen Variablen überflüssig)&lt;br /&gt;
(!Sie verhindern jede Art von Fehler automatisch)&lt;br /&gt;
&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{MC}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Was bewirkt die Idee Punkte gleich Punkte plus 1?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(Der bisherige Punktestand wird um eins erhöht)&lt;br /&gt;
(!Der Punktestand wird immer auf null gesetzt)&lt;br /&gt;
(!Der Punktestand wird gelöscht)&lt;br /&gt;
(!Die Figur bewegt sich einen Schritt)&lt;br /&gt;
&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{MC}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Was bedeutet Debugging?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(Fehler systematisch suchen und beheben)&lt;br /&gt;
(!Bilder in ein Spiel laden)&lt;br /&gt;
(!Ein Passwort speichern)&lt;br /&gt;
(!Eine Figur zeichnen)&lt;br /&gt;
&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{MC}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Wann ist eine alternative Lösung besonders sinnvoll?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(Wenn Du verschiedene Wege vergleichen und begründen möchtest)&lt;br /&gt;
(!Wenn Du nie testen willst)&lt;br /&gt;
(!Wenn nur die längste Lösung erlaubt ist)&lt;br /&gt;
(!Wenn kein Ziel vorhanden ist)&lt;br /&gt;
&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{MC}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Was ist bei einer Bedingung wichtig?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(Sie muss zum gewünschten Verhalten passen)&lt;br /&gt;
(!Sie muss immer wahr sein)&lt;br /&gt;
(!Sie darf keine Variable verwenden)&lt;br /&gt;
(!Sie muss immer am Programmende stehen)&lt;br /&gt;
&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{MC}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Welche Aussage über KI-Antworten ist richtig?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(Sie können hilfreich sein müssen aber geprüft werden)&lt;br /&gt;
(!Sie sind immer vollständig richtig)&lt;br /&gt;
(!Sie ersetzen eigenes Denken)&lt;br /&gt;
(!Sie brauchen keine Tests)&lt;br /&gt;
&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Memory ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;memo-quiz&amp;quot;&amp;gt;&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| Schleife || Wiederholt Anweisungen&lt;br /&gt;
|-&lt;br /&gt;
| Bedingung || Entscheidet abhängig von einer Prüfung&lt;br /&gt;
|-&lt;br /&gt;
| Variable || Speichert einen veränderbaren Wert&lt;br /&gt;
|-&lt;br /&gt;
| Debugging || Systematische Fehlersuche&lt;br /&gt;
|-&lt;br /&gt;
| KI-Hinweis || Vorschlag der überprüft werden muss&lt;br /&gt;
|-&lt;br /&gt;
| Testfall || Geplanter Versuch mit erwartetem Ergebnis&lt;br /&gt;
|}&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Drag and Drop ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;lueckentext-quiz&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
! Ordne die richtigen Begriffe zu.&lt;br /&gt;
! Thema&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Codezeile erklären&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| Bedeutung eines einzelnen Befehls verständlich machen&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Fehlerhypothese prüfen&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| Eine vermutete Ursache mit einem Test untersuchen&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Alternative vergleichen&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| Zwei Lösungswege nach passenden Kriterien gegenüberstellen&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Testen&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| Erwartetes und tatsächliches Verhalten vergleichen&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Selbst begründen&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| Mit eigenen Worten erklären warum eine Lösung passt&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
{{E}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Kreuzworträtsel ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;kreuzwort-quiz&amp;quot;&amp;gt;&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| Scratch || Welche visuelle Programmiersprache nutzt farbige Blöcke und eignet sich gut für den Einstieg?&lt;br /&gt;
|-&lt;br /&gt;
| Schleife || Wie heißt ein Programmelement das Anweisungen wiederholt?&lt;br /&gt;
|-&lt;br /&gt;
| Variable || Wie heißt ein Speicherplatz für einen veränderbaren Wert?&lt;br /&gt;
|-&lt;br /&gt;
| Bedingung || Wie heißt eine Prüfung von der eine Entscheidung im Programm abhängt?&lt;br /&gt;
|-&lt;br /&gt;
| Debugging || Wie nennt man das systematische Suchen und Beheben von Programmfehlern?&lt;br /&gt;
|-&lt;br /&gt;
| Algorithmus || Wie heißt eine eindeutige Folge von Schritten zur Lösung einer Aufgabe?&lt;br /&gt;
|}&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== LearningApps ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;iframe&amp;gt; https://learningapps.org/index.php?s=IM6+-+KI+und+Programmieren &amp;lt;/iframe&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Lückentext ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;quiz display=simple&amp;gt;&lt;br /&gt;
{&amp;#039;&amp;#039;&amp;#039;Vervollständige den Text.&amp;#039;&amp;#039;&amp;#039;&amp;lt;br&amp;gt;&lt;br /&gt;
|type=&amp;quot;{}&amp;quot;}&lt;br /&gt;
Beim Programmieren formuliert man genaue { Anweisungen } für einen Computer.&lt;br /&gt;
In Scratch werden viele Befehle als grafische { Blöcke } dargestellt.&lt;br /&gt;
Eine { Schleife } führt Anweisungen mehrfach aus.&lt;br /&gt;
Eine { Bedingung } entscheidet abhängig von einer Prüfung über den weiteren Ablauf.&lt;br /&gt;
Eine { Variable } kann einen veränderbaren Wert wie einen Punktestand speichern.&lt;br /&gt;
Beim { Debugging } werden Fehler systematisch gesucht und untersucht.&lt;br /&gt;
Eine Vermutung über die Ursache eines Fehlers heißt { Fehlerhypothese }.&lt;br /&gt;
Ein KI-Vorschlag sollte immer durch einen passenden { Test } überprüft werden.&lt;br /&gt;
Beim Vergleichen mehrerer Lösungen ist nicht nur Kürze sondern auch { Verständlichkeit } wichtig.&lt;br /&gt;
KI kann beim Erklären und Prüfen helfen ersetzt aber nicht das eigene { Verständnis }.&lt;br /&gt;
&amp;lt;/quiz&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Offene Aufgaben =&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
=== Leicht ===&lt;br /&gt;
&lt;br /&gt;
# [[Code erklären]]: Wähle einen einfachen Scratch-Block aus und schreibe zuerst selbst eine Erklärung in einem Satz. Lass Dir danach von einer KI eine Erklärung für Klasse 6 geben. Markiere, was beide Erklärungen gemeinsam haben.&lt;br /&gt;
# [[Testfall entwickeln]]: Erstelle für die Anweisung „ändere Punkte um 1“ drei Testfälle mit unterschiedlichen Startwerten. Sage jeweils vorher, welches Ergebnis Du erwartest, und prüfe es anschließend.&lt;br /&gt;
# [[Fehler finden]]: Baue absichtlich ein Scratch-Skript, bei dem sich eine Figur nur einmal statt dauerhaft bewegt. Tausche das Projekt mit einer Partnerin oder einem Partner und finde den Fehler.&lt;br /&gt;
# [[KI-Frage verbessern]]: Formuliere aus der ungenauen Frage „Mein Code geht nicht“ eine genaue Frage mit Ziel, Beobachtung und Vermutung.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
=== Standard ===&lt;br /&gt;
&lt;br /&gt;
# [[Fehlerhypothese]]: Programmiere einen Punktezähler mit einem absichtlichen Fehler. Formuliere zwei mögliche Fehlerhypothesen und entwickle für jede Hypothese einen eigenen Test.&lt;br /&gt;
# [[Lösungsvergleich]]: Löse dieselbe Bewegungsaufgabe einmal mit einem großen Bewegungsschritt und einmal mit einer Schleife aus mehreren kleinen Schritten. Vergleiche beide Lösungen nach Verständlichkeit, Länge und Erweiterbarkeit.&lt;br /&gt;
# [[KI als Tutor]]: Bitte eine KI, Dir einen Scratch-Block nur mit einer Frage zu erklären, statt sofort die Lösung zu nennen. Bewerte, ob die Rückfrage Dir beim eigenen Denken geholfen hat.&lt;br /&gt;
# [[Debugging-Protokoll]]: Dokumentiere eine echte Fehlersuche in fünf Spalten: Ziel, Beobachtung, Hypothese, Änderung, Ergebnis. Ergänze, an welcher Stelle eine KI hilfreich war und an welcher Stelle Du selbst entscheiden musstest.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
=== Schwer ===&lt;br /&gt;
&lt;br /&gt;
# [[Sternesammler]]: Entwickle das Mini-Spiel aus dem Lerntext vollständig. Baue mindestens eine Variable, eine Bedingung und eine Schleife ein. Lass Dir von einer KI nur für einen selbst gewählten Problemteil helfen und dokumentiere die Prüfung des Vorschlags.&lt;br /&gt;
# [[KI-Codekritik]]: Lass Dir zwei unterschiedliche Lösungsvorschläge für dieselbe einfache Scratch-Aufgabe geben. Teste beide und verfasse eine begründete Empfehlung, welche Lösung für Anfängerinnen und Anfänger verständlicher ist.&lt;br /&gt;
# [[Fehlerwerkstatt]]: Erstelle drei kleine fehlerhafte Programme mit unterschiedlichen Fehlerarten: falsche Reihenfolge, falsche Bedingung und fehlende Wiederholung. Formuliere zu jedem Programm eine passende Fehlerhypothese und einen Test.&lt;br /&gt;
# [[Erklärvideo]]: Produziere ein kurzes Lernvideo mit Bildschirmaufnahme, in dem Du zeigst, wie Du einen Fehler selbst eingrenzt, eine KI gezielt befragst, den Vorschlag testest und am Ende mit eigenen Worten erklärst.&lt;br /&gt;
&lt;br /&gt;
{{:Offene Aufgabe - MOOC erstellen}}&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Lernkontrolle =&lt;br /&gt;
&lt;br /&gt;
# [[Programmablauf analysieren]]: Eine Figur soll beim Start fünfmal je 20 Schritte gehen. Sie bewegt sich nur einmal. Beschreibe mindestens zwei mögliche Ursachen, ordne sie nach Wahrscheinlichkeit und entwickle für die erste Ursache einen Test.&lt;br /&gt;
# [[KI-Antwort bewerten]]: Eine KI empfiehlt bei einem Punktestand-Problem, die Variable bei jedem Schleifendurchlauf auf 0 zu setzen. Erkläre, wann das sinnvoll sein könnte und warum es während des Spiels meistens den Punktezähler zerstören würde.&lt;br /&gt;
# [[Alternative Lösungen beurteilen]]: Vergleiche „gehe 100 Schritte“ mit „wiederhole 10-mal gehe 10 Schritte“. Entscheide für eine Lernaufgabe über Schleifen und für ein möglichst kurzes Programm jeweils neu, welche Lösung besser passt.&lt;br /&gt;
# [[Transfer auf ein neues Spiel]]: In einem Labyrinth-Spiel soll eine Figur beim Berühren einer Wand zum Start zurückkehren. Formuliere eine Bedingung, beschreibe einen passenden Testfall und nenne eine mögliche Fehlerhypothese, falls die Rückkehr nicht funktioniert.&lt;br /&gt;
# [[Gute KI-Nutzung begründen]]: Erkläre anhand eines eigenen Beispiels den Unterschied zwischen „Lass die KI mein Problem lösen“ und „Nutze die KI, um meine Vermutung zu prüfen“. Zeige, warum die zweite Vorgehensweise mehr eigenes Verständnis fördern kann.&lt;br /&gt;
# [[Teststrategie entwickeln]]: Ein Programm besitzt drei mögliche Fehlerstellen. Plane eine Testreihenfolge, bei der Du immer nur eine Sache veränderst. Begründe, warum diese Vorgehensweise zuverlässiger ist als viele Änderungen gleichzeitig.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Lernnachweis =&lt;br /&gt;
&lt;br /&gt;
Für einen Lernnachweis zu &amp;#039;&amp;#039;&amp;#039;IM6 - KI und Programmieren&amp;#039;&amp;#039;&amp;#039; ist wichtig, dass Du nicht nur ein funktionierendes Endprodukt zeigst, sondern auch Deinen Denk- und Prüfprozess sichtbar machst.&lt;br /&gt;
&lt;br /&gt;
# [[Grundbegriffe]]: Du kannst Algorithmus, Schleife, Bedingung, Variable, Testfall und Debugging mit eigenen Worten erklären.&lt;br /&gt;
# [[Programmverständnis]]: Du kannst vorhersagen, was ein einfacher Programmablauf tun wird, und Deine Vorhersage durch einen Test überprüfen.&lt;br /&gt;
# [[Fehlersuche]]: Du kannst aus einer Beobachtung eine begründete Fehlerhypothese bilden und gezielt testen.&lt;br /&gt;
# [[KI-Nutzung]]: Du kannst eine KI zum Erklären, Prüfen einer Hypothese oder Vergleichen von Alternativen einsetzen, ohne ihre Antwort ungeprüft zu übernehmen.&lt;br /&gt;
# [[Begründung]]: Du kannst erklären, warum eine Lösung funktioniert und warum Du sie einer anderen Lösung vorziehst.&lt;br /&gt;
# [[Dokumentation]]: Du kannst zeigen, welche Änderung Du vorgenommen hast und welche Beobachtung danach Deine Entscheidung bestätigt oder widerlegt hat.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= OERs zum Thema =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;iframe&amp;gt; https://de.m.wikipedia.org/wiki/Scratch_(Programmiersprache) &amp;lt;/iframe&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;iframe&amp;gt; https://de.m.wikipedia.org/wiki/K%C3%BCnstliche_Intelligenz &amp;lt;/iframe&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;iframe&amp;gt; https://de.m.wikipedia.org/wiki/Programmierung &amp;lt;/iframe&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Verknüpfte Lernbereiche =&lt;br /&gt;
&lt;br /&gt;
{| align=center&lt;br /&gt;
{{:D-Tab}}&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;[[IM6 - KI und Programmieren]]&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
# [[Programmierung]]&lt;br /&gt;
# [[Scratch (Programmiersprache)]]&lt;br /&gt;
# [[Algorithmus]]&lt;br /&gt;
# [[Schleife]]&lt;br /&gt;
# [[Bedingung]]&lt;br /&gt;
# [[Variable]]&lt;br /&gt;
# [[Debugging]]&lt;br /&gt;
# [[Künstliche Intelligenz]]&lt;br /&gt;
# [[Testen]]&lt;br /&gt;
# [[Problemlösen]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Informatik]]&lt;br /&gt;
[[Kategorie:Künstliche Intelligenz]]&lt;br /&gt;
[[Kategorie:Programmierung]]&lt;br /&gt;
[[Kategorie:Scratch]]&lt;br /&gt;
[[Kategorie:Medienbildung]]&lt;br /&gt;
[[Kategorie:Digitale Bildung]]&lt;br /&gt;
[[Kategorie:Klasse 5-6]]&lt;br /&gt;
[[Kategorie:Klasse 6]]&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= aiMOOC-Projekte =&lt;br /&gt;
[[Kategorie:AI_MOOC]] [[Kategorie:GPT aiMOOC]]&lt;br /&gt;
{{MT}}&lt;/div&gt;</summary>
		<author><name>Glanz</name></author>
	</entry>
</feed>