<?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=Programmieren_1</id>
	<title>Programmieren 1 - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://staging.moocwiki.org/index.php?action=history&amp;feed=atom&amp;title=Programmieren_1"/>
	<link rel="alternate" type="text/html" href="https://staging.moocwiki.org/index.php?title=Programmieren_1&amp;action=history"/>
	<updated>2026-06-19T18:59:50Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in MOOCsWiki Staging</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://staging.moocwiki.org/index.php?title=Programmieren_1&amp;diff=29944&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=Programmieren_1&amp;diff=29944&amp;oldid=prev"/>
		<updated>2026-06-19T07:27:35Z</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;
= Programmieren =&lt;br /&gt;
&lt;br /&gt;
[[Datei:Programming icon flat circle.svg|500px|rahmenlos|center]]&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Einleitung ==&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Programmieren&amp;#039;&amp;#039;&amp;#039; bedeutet, einem [[Computer]] durch verständliche [[Anweisung|Anweisungen]] mitzuteilen, was er tun soll. Diese Anweisungen werden in einer [[Programmiersprache]] formuliert und als [[Quellcode]] gespeichert. Aus vielen sinnvoll angeordneten Anweisungen entsteht ein [[Computerprogramm]], das zum Beispiel Daten verarbeitet, Spiele steuert, Webseiten erzeugt, Roboter bewegt, Apps ausführt oder wissenschaftliche Berechnungen unterstützt.&lt;br /&gt;
&lt;br /&gt;
Beim Programmieren geht es nicht nur darum, Code zu schreiben. Du lernst, ein [[Problem]] genau zu verstehen, es in kleinere Teilprobleme zu zerlegen, passende [[Algorithmus|Algorithmen]] zu entwickeln, Lösungen zu testen, Fehler zu finden und den Code so zu gestalten, dass andere Menschen ihn verstehen können. Programmieren verbindet daher [[Logik]], [[Kreativität]], [[Sprache]], [[Mathematik]], [[Teamarbeit]] und [[Problemlösen]].&lt;br /&gt;
&lt;br /&gt;
{{#ev:youtube|   https://www.youtube.com/watch?v=6cEKVEpqGb0   |500|center}}&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Was ist ein Programm? ==&lt;br /&gt;
&lt;br /&gt;
Ein [[Programm]] ist eine genaue Handlungsanweisung für ein technisches System. Ein einfaches Programm kann zum Beispiel zwei Zahlen addieren. Ein komplexes Programm kann eine Suchmaschine betreiben, Bilder erkennen, Datenbanken verwalten oder eine Simulation ausführen. Damit ein Computer ein Programm ausführen kann, muss die Beschreibung eindeutig sein. Menschen können ungenaue Formulierungen oft aus dem Zusammenhang verstehen, Computer dagegen benötigen klare Regeln.&lt;br /&gt;
&lt;br /&gt;
Ein Programm besteht häufig aus folgenden Grundbausteinen:&lt;br /&gt;
# [[Eingabe]]: Daten werden aufgenommen, zum Beispiel über Tastatur, Maus, Sensoren oder Dateien.&lt;br /&gt;
# [[Verarbeitung]]: Die Daten werden nach bestimmten Regeln verändert, verglichen, sortiert oder berechnet.&lt;br /&gt;
# [[Ausgabe]]: Das Ergebnis wird angezeigt, gespeichert, gesendet oder an ein anderes System weitergegeben.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Quellcode und Programmiersprachen ==&lt;br /&gt;
&lt;br /&gt;
Der [[Quellcode]] ist der für Menschen lesbare Text eines Programms. Er wird in einer [[Programmiersprache]] geschrieben. Beispiele für Programmiersprachen sind [[Python]], [[JavaScript]], [[Java]], [[C]], [[C++]], [[C Sharp|C#]], [[PHP]], [[Ruby]], [[Swift]] und [[Kotlin]]. Jede Sprache hat eigene Regeln, die man [[Syntax]] nennt. Diese Regeln bestimmen, wie Befehle, Variablen, Funktionen, Bedingungen und Schleifen geschrieben werden müssen.&lt;br /&gt;
&lt;br /&gt;
[[Datei:C Programming Language.svg|300px|rahmenlos|center]]&lt;br /&gt;
&lt;br /&gt;
Die Wahl einer Programmiersprache hängt vom Ziel ab. [[Python]] wird oft für Einstieg, Datenanalyse, Automatisierung und [[Künstliche Intelligenz]] genutzt. [[JavaScript]] ist besonders wichtig für interaktive [[Website|Webseiten]]. [[Java]] und [[Kotlin]] werden häufig für Anwendungen und [[Android]]-Apps verwendet. [[C]] und [[C++]] spielen eine große Rolle bei systemnaher Programmierung, Betriebssystemen, eingebetteten Systemen und leistungsnaher Software.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Algorithmisches Denken ==&lt;br /&gt;
&lt;br /&gt;
Ein [[Algorithmus]] ist eine endliche, eindeutige Folge von Schritten zur Lösung eines Problems. Ein Kochrezept, eine Wegbeschreibung oder eine Anleitung zum Sortieren von Karten kann als Alltagsalgorithmus verstanden werden. In der [[Informatik]] müssen Algorithmen besonders präzise sein, weil ein Computer sie exakt ausführt.&lt;br /&gt;
&lt;br /&gt;
Beim algorithmischen Denken fragst Du:&lt;br /&gt;
# [[Problemzerlegung]]: Welche Teilaufgaben stecken im Problem?&lt;br /&gt;
# [[Abstraktion]]: Welche Informationen sind wichtig und welche können weggelassen werden?&lt;br /&gt;
# [[Mustererkennung]]: Gibt es ähnliche Probleme oder wiederkehrende Strukturen?&lt;br /&gt;
# [[Schrittfolge]]: In welcher Reihenfolge müssen die Anweisungen ausgeführt werden?&lt;br /&gt;
# [[Überprüfung]]: Funktioniert die Lösung auch bei ungewöhnlichen Eingaben?&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Variablen, Datentypen und Werte ==&lt;br /&gt;
&lt;br /&gt;
Eine [[Variable]] ist ein benannter Speicherplatz für einen Wert. Du kannst Dir eine Variable wie eine beschriftete Schachtel vorstellen. In einer Schachtel mit dem Namen &amp;#039;&amp;#039;punktzahl&amp;#039;&amp;#039; kann zum Beispiel die Zahl 15 stehen. Programme nutzen Variablen, um Daten zu speichern und später weiterzuverarbeiten.&lt;br /&gt;
&lt;br /&gt;
[[Datentyp|Datentypen]] beschreiben, welche Art von Wert gespeichert wird. Typische Datentypen sind [[Ganzzahl]], [[Gleitkommazahl]], [[Zeichenkette]], [[Boolescher Wert]] und [[Liste]]. Ein boolescher Wert kann nur wahr oder falsch sein und ist besonders wichtig für Entscheidungen im Programm.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Bedingungen und Entscheidungen ==&lt;br /&gt;
&lt;br /&gt;
Mit [[Bedingte Anweisung|Bedingungen]] kann ein Programm unterschiedliche Wege einschlagen. Eine Bedingung prüft, ob etwas wahr oder falsch ist. Beispiel: Wenn die Temperatur unter null Grad liegt, soll eine Warnung angezeigt werden. Sonst soll das Programm normal weiterlaufen.&lt;br /&gt;
&lt;br /&gt;
Bedingungen sind wichtig für Spiele, Apps, Webseiten, Steuerungen, Sicherheitssysteme und Datenverarbeitung. Ohne Bedingungen würden Programme immer nur denselben festen Ablauf ausführen.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Schleifen und Wiederholungen ==&lt;br /&gt;
&lt;br /&gt;
Eine [[Schleife (Programmierung)|Schleife]] wiederholt Anweisungen. Dadurch muss der gleiche Code nicht viele Male geschrieben werden. Eine Schleife kann zum Beispiel alle Namen in einer Liste ausgeben, alle Pixel eines Bildes prüfen oder so lange eine Eingabe verlangen, bis sie gültig ist.&lt;br /&gt;
&lt;br /&gt;
Typische Schleifen sind [[For-Schleife]] und [[While-Schleife]]. Eine For-Schleife wird häufig verwendet, wenn die Anzahl der Wiederholungen bekannt ist. Eine While-Schleife läuft, solange eine Bedingung erfüllt ist.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Funktionen und Modularität ==&lt;br /&gt;
&lt;br /&gt;
Eine [[Funktion (Programmierung)|Funktion]] ist ein benannter Programmteil, der eine bestimmte Aufgabe erfüllt. Funktionen machen Programme übersichtlicher, weil sie große Probleme in kleinere, wiederverwendbare Bausteine zerlegen. Eine Funktion kann Eingaben erhalten, etwas berechnen und ein Ergebnis zurückgeben.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Modularität&amp;#039;&amp;#039;&amp;#039; bedeutet, ein Programm aus klar getrennten Bausteinen aufzubauen. Das verbessert die [[Wartbarkeit]], die [[Lesbarkeit]] und die [[Wiederverwendbarkeit]] von Code. Gute Programmiererinnen und Programmierer schreiben nicht nur Code, der irgendwie funktioniert, sondern Code, der verständlich, überprüfbar und erweiterbar ist.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Fehler, Testen und Debugging ==&lt;br /&gt;
&lt;br /&gt;
Fehler in Programmen nennt man [[Programmfehler]] oder [[Bug]]. Das Suchen und Beheben dieser Fehler heißt [[Debugging]]. Fehler können verschiedene Ursachen haben: Tippfehler, falsche Annahmen, unklare Anforderungen, ungünstige Daten oder Denkfehler im Algorithmus.&lt;br /&gt;
&lt;br /&gt;
[[Testen]] ist deshalb ein zentraler Teil des Programmierens. Du prüfst, ob Dein Programm bei normalen, extremen und unerwarteten Eingaben richtig reagiert. Professionelle Softwareentwicklung nutzt oft [[Unit-Test|Unit-Tests]], [[Integrationstest|Integrationstests]] und automatisierte Testverfahren.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Programmierparadigmen ==&lt;br /&gt;
&lt;br /&gt;
Ein [[Programmierparadigma]] ist eine grundlegende Denkweise beim Programmieren. In der [[imperative Programmierung|imperativen Programmierung]] beschreibst Du Schritt für Schritt, was der Computer tun soll. In der [[objektorientierte Programmierung|objektorientierten Programmierung]] arbeitest Du mit [[Objekt (Programmierung)|Objekten]], die Eigenschaften und Methoden besitzen. In der [[funktionale Programmierung|funktionalen Programmierung]] stehen Funktionen und unveränderliche Daten stärker im Mittelpunkt.&lt;br /&gt;
&lt;br /&gt;
Viele moderne Programmiersprachen unterstützen mehrere Paradigmen. Dadurch können Entwicklerinnen und Entwickler je nach Aufgabe eine passende Herangehensweise wählen.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Softwareentwicklung als Prozess ==&lt;br /&gt;
&lt;br /&gt;
Professionelles Programmieren geschieht selten allein und selten ohne Planung. Zur [[Softwareentwicklung]] gehören Anforderungsanalyse, Entwurf, Implementierung, Test, Dokumentation, Veröffentlichung und Pflege. In Teams werden häufig [[Versionsverwaltung|Versionsverwaltungssysteme]] wie [[Git]] genutzt, damit Änderungen nachvollziehbar bleiben und mehrere Personen gleichzeitig an einem Projekt arbeiten können.&lt;br /&gt;
&lt;br /&gt;
Wichtige Qualitätsmerkmale von Software sind [[Benutzerfreundlichkeit]], [[Sicherheit]], [[Zuverlässigkeit]], [[Effizienz]], [[Barrierefreiheit]], [[Wartbarkeit]] und [[Datenschutz]]. Gute Software löst nicht nur ein technisches Problem, sondern berücksichtigt auch die Menschen, die sie benutzen.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Programmieren lernen ==&lt;br /&gt;
&lt;br /&gt;
Programmieren lernst Du am besten durch eigenes Tun. Kleine Projekte sind besonders geeignet: ein Taschenrechner, ein Zahlenratespiel, eine einfache Webseite, ein Quiz, eine Wetteranzeige, ein Vokabeltrainer oder eine kleine Animation. Wichtig ist, dass Du regelmäßig ausprobierst, Fehler untersuchst und Deine Lösung verbesserst.&lt;br /&gt;
&lt;br /&gt;
Ein sinnvoller Lernweg kann so aussehen:&lt;br /&gt;
# [[Grundlagen]] verstehen: Variablen, Bedingungen, Schleifen, Funktionen und Datentypen kennenlernen.&lt;br /&gt;
# [[Projektarbeit]] beginnen: Kleine Programme planen und selbst schreiben.&lt;br /&gt;
# [[Fehleranalyse]] üben: Fehlermeldungen lesen, testen und systematisch korrigieren.&lt;br /&gt;
# [[Codequalität]] verbessern: Namen, Struktur, Kommentare und Wiederverwendbarkeit beachten.&lt;br /&gt;
# [[Teamarbeit]] erproben: Code erklären, Feedback geben und gemeinsam Lösungen entwickeln.&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;
&amp;#039;&amp;#039;&amp;#039;Was bedeutet Programmieren im Kern?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(Anweisungen für einen Computer formulieren)&lt;br /&gt;
(!Einen Computer mechanisch reparieren)&lt;br /&gt;
(!Nur Texte am Computer schreiben)&lt;br /&gt;
(!Eine Datei ausdrucken)&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{MC}}&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Wie nennt man den für Menschen lesbaren Text eines Programms?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(Quellcode)&lt;br /&gt;
(!Bildschirmcode)&lt;br /&gt;
(!Stromcode)&lt;br /&gt;
(!Druckcode)&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{MC}}&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Was ist ein Algorithmus?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(Eine eindeutige Schrittfolge zur Lösung eines Problems)&lt;br /&gt;
(!Ein zufälliger Fehler im Programm)&lt;br /&gt;
(!Ein bestimmter Computerbildschirm)&lt;br /&gt;
(!Eine Art von Tastatur)&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{MC}}&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Wozu dient eine Variable?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(Zum Speichern eines Wertes unter einem Namen)&lt;br /&gt;
(!Zum Löschen des Betriebssystems)&lt;br /&gt;
(!Zum Vergrößern des Monitors)&lt;br /&gt;
(!Zum Drucken von Papier)&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{MC}}&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Welche Struktur wiederholt Anweisungen in einem Programm?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(Schleife)&lt;br /&gt;
(!Kommentar)&lt;br /&gt;
(!Dateiname)&lt;br /&gt;
(!Symbolleiste)&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{MC}}&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Was prüft eine Bedingung in einem Programm?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(Ob eine Aussage wahr oder falsch ist)&lt;br /&gt;
(!Ob der Bildschirm sauber ist)&lt;br /&gt;
(!Ob ein Kabel bunt ist)&lt;br /&gt;
(!Ob ein Drucker Papier hat)&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{MC}}&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Warum nutzt man Funktionen?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(Um Programmteile übersichtlich und wiederverwendbar zu machen)&lt;br /&gt;
(!Um den Computer auszuschalten)&lt;br /&gt;
(!Um nur Bilder zu speichern)&lt;br /&gt;
(!Um Tastaturen zu ersetzen)&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{MC}}&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Was bedeutet Debugging?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(Fehler in Programmen suchen und beheben)&lt;br /&gt;
(!Programme ohne Lesen löschen)&lt;br /&gt;
(!Computergehäuse öffnen)&lt;br /&gt;
(!Eine Webseite ausdrucken)&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{MC}}&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Welche Sprache wird häufig für interaktive Webseiten verwendet?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(JavaScript)&lt;br /&gt;
(!Latein)&lt;br /&gt;
(!Notenschrift)&lt;br /&gt;
(!Morsezeichen)&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{MC}}&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Was unterstützt eine Versionsverwaltung wie Git?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(Änderungen an Dateien nachvollziehen und gemeinsam arbeiten)&lt;br /&gt;
(!Den Bildschirm heller machen)&lt;br /&gt;
(!Den Akku eines Laptops vergrößern)&lt;br /&gt;
(!Das Internet abschalten)&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;
| Variable || Benannter Speicherplatz&lt;br /&gt;
|-&lt;br /&gt;
| Schleife || Wiederholung von Anweisungen&lt;br /&gt;
|-&lt;br /&gt;
| Funktion || Wiederverwendbarer Programmbaustein&lt;br /&gt;
|-&lt;br /&gt;
| Algorithmus || Schrittfolge zur Problemlösung&lt;br /&gt;
|-&lt;br /&gt;
| Debugging || Fehlersuche im Code&lt;br /&gt;
|-&lt;br /&gt;
| Quellcode || Lesbarer Programmtext&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;Problem verstehen&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| Anfang der Programmplanung&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Algorithmus entwerfen&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| Lösungsschritte festlegen&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Quellcode schreiben&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| Umsetzung in einer Programmiersprache&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Programm testen&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| Verhalten mit Eingaben prüfen&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Fehler beheben&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| Debugging und Verbesserung&lt;br /&gt;
|}&lt;br /&gt;
{{E}}&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;
| Algorithmus || Wie nennt man eine eindeutige Schrittfolge zur Lösung eines Problems?&lt;br /&gt;
|-&lt;br /&gt;
| Variable || Wie heißt ein benannter Speicherplatz für Werte?&lt;br /&gt;
|-&lt;br /&gt;
| Schleife || Welche Struktur wiederholt Anweisungen?&lt;br /&gt;
|-&lt;br /&gt;
| Funktion || Wie heißt ein wiederverwendbarer Programmbaustein?&lt;br /&gt;
|-&lt;br /&gt;
| Python || Welche Programmiersprache wird oft für Einsteiger und Datenanalyse genutzt?&lt;br /&gt;
|-&lt;br /&gt;
| Debugging || Wie nennt man das Suchen und Beheben von Programmfehlern?&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=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;
Programmieren bedeutet, einem { Computer } genaue Anweisungen zu geben. Diese Anweisungen werden in einer { Programmiersprache } geschrieben. Der lesbare Programmtext heißt { Quellcode }. Eine { Variable } speichert einen Wert unter einem Namen. Eine { Bedingung } entscheidet, welcher Programmteil ausgeführt wird. Eine { Schleife } wiederholt Anweisungen. Eine { Funktion } fasst einen wiederverwendbaren Programmbaustein zusammen. Ein { Algorithmus } beschreibt eine eindeutige Schrittfolge zur Lösung eines Problems. Beim { Debugging } werden Fehler gesucht und behoben. Gute Software soll nicht nur funktionieren, sondern auch { wartbar } sein.&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;
# [[Alltagsalgorithmus]]: Beschreibe einen alltäglichen Ablauf wie Zähneputzen, Schulweg oder Pausenbrot machen als genaue Schrittfolge.&lt;br /&gt;
# [[Variablen]]: Erfinde fünf Variablen für ein Spiel und erkläre, welche Werte sie speichern könnten.&lt;br /&gt;
# [[Bedingungen]]: Formuliere zehn Wenn-dann-Sätze, die in einer App oder einem Spiel sinnvoll wären.&lt;br /&gt;
# [[Fehlermeldung]]: Suche eine echte oder erfundene Fehlermeldung und erkläre, wie Du systematisch herausfinden würdest, was sie bedeutet.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
=== Standard ===&lt;br /&gt;
# [[Zahlenratespiel]]: Plane ein einfaches Zahlenratespiel mit Eingabe, Verarbeitung, Ausgabe, Bedingungen und Schleife.&lt;br /&gt;
# [[Programmablaufplan]]: Zeichne einen Ablaufplan für einen digitalen Vokabeltrainer.&lt;br /&gt;
# [[Codequalität]]: Vergleiche zwei kurze Codebeispiele und bewerte, welches verständlicher ist und warum.&lt;br /&gt;
# [[Webseite]]: Entwirf eine einfache Webseite, die auf eine Eingabe reagiert, und beschreibe die benötigten Programmbausteine.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
=== Schwer ===&lt;br /&gt;
# [[Softwareprojekt]]: Entwickle die Idee für eine App, die ein reales Problem in Deiner Schule oder Umgebung löst, und schreibe ein Pflichtenheft.&lt;br /&gt;
# [[Teststrategie]]: Erstelle für ein selbst gewähltes Programm zehn Testfälle, darunter normale, extreme und falsche Eingaben.&lt;br /&gt;
# [[Programmierparadigma]]: Vergleiche imperative, objektorientierte und funktionale Programmierung an einem einfachen Beispiel.&lt;br /&gt;
# [[Ethik der Informatik]]: Diskutiere, welche Verantwortung Programmierende beim Umgang mit Daten, Sicherheit und Barrierefreiheit haben.&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;
# [[Transferaufgabe Algorithmus]]: Erkläre an einem selbst gewählten Alltagsbeispiel, warum eindeutige Reihenfolge und klare Bedingungen für Programme wichtig sind.&lt;br /&gt;
# [[Analyse Softwarequalität]]: Beurteile eine App, die Du häufig nutzt, nach Benutzerfreundlichkeit, Zuverlässigkeit, Datenschutz und Wartbarkeit.&lt;br /&gt;
# [[Fehlerdiagnose]]: Beschreibe, wie Du vorgehen würdest, wenn ein Programm bei manchen Eingaben funktioniert und bei anderen abstürzt.&lt;br /&gt;
# [[Modularisierung]]: Zerlege ein größeres Projekt wie einen Vokabeltrainer, ein Quiz oder einen Stundenplaner in sinnvolle Funktionen und Module.&lt;br /&gt;
# [[Gesellschaftlicher Bezug]]: Erkläre, wie Programmieren Berufe, Kommunikation, Bildung oder Freizeit verändert, und nenne Chancen und Risiken.&lt;br /&gt;
# [[Projektreflexion]]: Entwickle ein kleines Programmkonzept und begründe, welche Programmiersprache, Datenstrukturen und Tests dafür geeignet wären.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Lernnachweis =&lt;br /&gt;
&lt;br /&gt;
# [[Projektplanung]]: Plane ein eigenes kleines Programm mit Zielgruppe, Problemstellung, Eingaben, Verarbeitung, Ausgaben und mindestens drei möglichen Fehlerfällen.&lt;br /&gt;
# [[Algorithmische Lösung]]: Entwickle zu Deinem Projekt einen Algorithmus als Schrittfolge oder Ablaufdiagramm und begründe, warum die Reihenfolge logisch ist.&lt;br /&gt;
# [[Prototyp]]: Setze einen kleinen Prototyp in einer Programmiersprache oder in Pseudocode um und dokumentiere zentrale Variablen, Bedingungen, Schleifen und Funktionen.&lt;br /&gt;
# [[Testprotokoll]]: Führe mindestens fünf Tests durch, beschreibe erwartete und tatsächliche Ergebnisse und erkläre, wie Du gefundene Fehler behebst.&lt;br /&gt;
# [[Reflexion]]: Beurteile Dein Programm nach Verständlichkeit, Wartbarkeit, Benutzerfreundlichkeit, Datenschutz und möglicher Erweiterbarkeit.&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/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;
= Links =&lt;br /&gt;
&lt;br /&gt;
{| align=center&lt;br /&gt;
{{:D-Tab}}&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;[[Programmieren]]&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
# [[Programmierung]]&lt;br /&gt;
# [[Programmiersprache]]&lt;br /&gt;
# [[Quellcode]]&lt;br /&gt;
# [[Algorithmus]]&lt;br /&gt;
# [[Variable]]&lt;br /&gt;
# [[Bedingte Anweisung]]&lt;br /&gt;
# [[Schleife (Programmierung)]]&lt;br /&gt;
# [[Funktion (Programmierung)]]&lt;br /&gt;
# [[Debugging]]&lt;br /&gt;
# [[Softwareentwicklung]]&lt;br /&gt;
# [[Git]]&lt;br /&gt;
# [[Informatik]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Zusammenfassung =&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Programmieren&amp;#039;&amp;#039;&amp;#039; ist das Entwickeln genauer Anweisungen für Computer. Du nutzt [[Programmiersprache|Programmiersprachen]], um [[Quellcode]] zu schreiben, [[Algorithmus|Algorithmen]] umzusetzen, Daten zu verarbeiten und Probleme zu lösen. Wichtige Grundlagen sind [[Variable|Variablen]], [[Datentyp|Datentypen]], [[Bedingte Anweisung|Bedingungen]], [[Schleife (Programmierung)|Schleifen]], [[Funktion (Programmierung)|Funktionen]] und [[Debugging]]. Professionelle [[Softwareentwicklung]] achtet außerdem auf [[Testen]], [[Wartbarkeit]], [[Sicherheit]], [[Benutzerfreundlichkeit]], [[Datenschutz]] und Zusammenarbeit im Team.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Informatik]]&lt;br /&gt;
[[Kategorie:Programmieren]]&lt;br /&gt;
[[Kategorie:Programmierung]]&lt;br /&gt;
[[Kategorie:Digitalisierung]]&lt;br /&gt;
[[Kategorie:Medienbildung]]&lt;br /&gt;
[[Kategorie:Klasse 7-8]]&lt;br /&gt;
[[Kategorie:Klasse 9-10]]&lt;br /&gt;
[[Kategorie:Sekundarstufe I]]&lt;br /&gt;
[[Kategorie:Sekundarstufe II]]&lt;br /&gt;
&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>