Logo Cusanus Gymnasium Erkelenz
Icon Leitprogramm Informatik

Cusanus-Gymnasium Erkelenz Europaschule

Einführung in die Programmierung mit

Kapitel I - Grundlagen
Differenzierungskurs
"Informatik" - Klasse 9 / 10
Gr - 2025 / 2026
Version vom 30.08.2025

Kapitel I - Grundlagen

Icon Übersicht

Ausgehend von möglichen Einsatzgebieten des Computers werden wir unterschiedliche Begriffe, die in Zusammenhang mit der Programmierung stehen, näher betrachten. Nachdem der Weg von einer Eingabe hin zu einer Ausgabe kurz betrachtet wurde, wollen wir erste eigene Eingaben tätigen und den Computer bzw. Python als Taschenrechnerersatz nutzen. Dadurch werden gleichzeitig zwei grundlegende Funktionen, die Programmiersprachen beherrschen müssen, vorgestellt.

Icon Lernziele
Am Ende dieses Kapitels kannst du
  • die Grundbegriffe im Zusammenhang mit der Programmierung erläutern.
  • die Python-Shell auf den Schulrechnern (und auch zu Hause) starten und damit den Python-Interpreter nutzen.
  • die Python-Shell als Taschenrechner nutzen.
  • zwei grundlegenden Funktionen benennen und erläutern, die in jeder Programmiersprache enthalten sein müssen.

Computereinsatz

Wenn man heutzutage jemanden auf der Straße antrifft und fragt, was man mit einem Computer macht, können die meisten Menschen eine (sinnvolle) Antwort geben. Ein Computer hilft den Menschen bei der Buchführung, bei der Recherche, bei Verwaltungsaufgaben usw. All dies wäre nicht möglich, gäbe es nicht eine Vielzahl von Computerprogrammen, die dies ermöglichen. Erst durch geeignete Programme können wir den Computer zielgerichtet für unsere Aufgaben nutzen. Fragt man allerdings nach, wie man Computerprogramme erstellt, so werden nur wenige eine geeignete Antwort geben können.

Unter einem Computerprogramm oder kurz einem Programm versteht man eine Folge von (einfachen) Anweisungen, die von einem Computer "verstanden" werden können und auf diesem ausgeführt werden können, mit dem Ziel, dem Benutzer eine bestimmte Funktionalität zur Verfügung zu stellen. Kurz: Ein Programm ist eine Liste detaillierter Anweisungen. Bei einer Textverarbeitungssoftware kann diese Liste auch leicht schon mal eine oder mehrere Millionen Anweisungen enthalten. Aufgabe eines Programmierers oder einer ganzen Gruppe von Programmierern ist es nun, Programme zu planen und zu schreiben (programmieren), um für bestimmte Nutzer eine bestimmte (neue) Funktionalität zur Verfügung zu stellen.

Bevor ein neues Programm am Computer umgesetzt und damit im eigentlichen Sinne programmiert wird, haben sich einige Informatiker schon eine Vielzahl von Gedanken zu diesem Programm gemacht.

  • Welche Funktionalität soll das Programm bieten?
  • Wie setzt man diese geeignet im Computer um?
  • Wie erreicht man die gewünschte Funktionalität?
  • Wie gestaltet man eine geeignete Oberfläche?
  • Wie strukturiert man das Programm?
  • Mit welchen Daten arbeitet das Programm? Wie kommen diese "in" das Programm?
  • Welche Einsatzgebiete hat das Programm?
  • Sind spätere Erweiterungen geplant?
  • Wie kann man die zu programmierenden Teile aufteilen?
  • Durch welches Modell repräsentiere ich die benötigten Daten?
  • ...

Die hier aufgeworfenen Fragen sind beispielhaft zu verstehen. In der Realität sind diese deutlich komplexer und differenzierter. Es kann aber durchaus üblich sein, dass der eigentliche Planungsprozess länger dauert als die spätere Umsetzung am Computer.

Programmierung

Unter der Umsetzung der Vorüberlegungen, Planungen und Entwürfe am Computer versteht man die eigentliche Programmierung. Die Vorüberlegungen, die eher abstrakten Charakter haben, werden hier in konkrete Anweisungen für den Computer umgewandelt. Die Anweisungen eines Programmes bezeichnet man auch als Quelltext oder Quellcode. Sie werden in einer bestimmten Programmiersprache verfasst. Je nach Intention oder angestrebter Funktionalität bietet sich eine "bestimmte Sorte" von Programmiersprache an, doch das führt erstmal zu weit.

Icon Aufgabe 1

Recherchiere im Internet, was man unter einer Programmiersprache versteht. Formuliere einen kurzen Merksatz.

Lösung:
  • Unter einer Programmiersprache versteht man eine künstliche Sprache zur Verständigung zwischen Mensch und Computer. Sie wird verwendet, um einem Computer Anweisungen zu geben und damit ganze Programme zu erstellen.
  • Mögliche Quellen: Wikipedia oder Einstieg in eine Recherche mittels Google (oder einer anderen Suchmaschine)

Syntax und Semantik von Programmiersprachen

Auch wenn Textverarbeitungs- und Tabellenkalkulationsprogramme oder Spiele aus Millionen von einzelnen Anweisungen für den Computer bestehen, haben alle einzelnen Anweisung etwas gemeinsam: Sie müssen nach genauen Regeln aufgeschrieben werden. Wie für jede natürliche Sprache (Deutsch, Englisch ...) üblich, gibt es auch bei Programmiersprachen Regeln für Rechtschreibung, Grammatik und Satzbau. Diese fasst man unter dem Begriff "Syntax" zusammen. Sicherlich hast du diesen Begriff bereits einmal im Deutsch- oder Fremdsprachenunterricht gehört. Deutsche Hauptsätze sind nach dem folgenden "Prinzip" aufgebaut: Subjekt - Verb - Objekt. Beispiele:

  • Peter schreibt ein Buch.
  • Petra macht ihre Hausaufgaben.
  • Das Haus kocht Suppe.

Alle drei Beispielsätze sind nach dem oben genannten Prinzip aufgebaut. Man sagt, sie sind syntaktisch korrekt. Der letzte Beispielsatz macht, obwohl er den Regeln entsprechend aufgebaut ist, keinen Sinn, denn ein Haus kann nicht kochen. Mit dem Sinngehalt einer Aussage beschäftigt sich die Semantik. Da hinter dem Satz "Das Haus kocht Suppe." keine sinnvolle Aussage steckt, sagt man auch, dass die Aussage semantisch falsch ist. Wir werden die Begriffe Semantik und Syntax später nochmal einmal aufgreifen und auch in Bezug auf die Programmiersprache Python verdeutlichen.

Icon Aufgabe 2

Betrachte die beiden Sätze:

  • Der Wind färbt das Auto.
  • Suppe kochen. Hänsel

Erläutere, welche Aussagen du über die beiden Sätze machen kannst.

Lösung:
  • Der erste Satz ist zwar korrekt gebaut (Syntax), ergibt allerdings keinen Sinn (Semantik).
  • Der zweite Satz ist nicht korrekt gebaut, also syntaktisch falsch. Eine entsprechende Bedeutung kann von einem Menschen noch erschlossen werden. Dies ist nicht immer möglich und insbesondere Computer sind dazu noch nicht in der Lage.

Bevor der Computer unsere Anweisungen, die wir in einer Programmiersprache formuliert haben, endgültig versteht und umsetzen kann, ist noch ein weiterer Schritt nötig. Aber keine Angst, diesen übernimmt der Computer für uns. Wir brauchen dabei nichts weiter zu tun. Damit das Herzstück bzw. das Gehirn des Computers, der sog. Prozessor, unsere Anweisungen versteht, müssen diese vorher in Maschinencode oder Bytecode übersetzt werden. Die Maschinensprache ist hinsichtlich der zur Verfügung stehenden Zeichen einfach: Es gibt nur die Zeichen 0 oder 1. Entsprechend werden diese vom Prozessor, der mit elektrischen Schaltern arbeitet, als "Strom an" und "Strom aus" interpretiert. Diese Übersetzung übernimmt - wie angesprochen - ein Programm für uns. Im Rahmen der Programmiersprache Python übernimmt dies der sog. Python-Interpreter.

Icon Zusatzinformation

Man unterscheidet bei der Umwandlung in Maschinen- oder Bytecode zwischen zwei grundlegenden Arten des Umwandlungsprozesses. Einerseits gibt es Programmiersprachen wie Python, die interpretiert werden. Auf der anderen Seite gibt es Sprachen, wie beispielsweise Java oder Delphi, die vor der Ausführung kompiliert werden.

Python

Nachdem wir nun ein bisschen ausgeholt haben und einige Grundlagen und Hintergründe besprochen haben, wollen wir jetzt endlich zur Praxis schreiten und erste Kontakte mit der Programmiersprache Python bzw. dem zugehörigen Interpreter machen. Die nächste Aufgabe gibt es sowohl für Windows als auch für Linux (etwas weiter unten), da sich das vorgehen hier leicht unterscheidet!

Icon Aufgabe 3 - Windows

Abbildung
Darstellung der Dateien im genannten Ordner
Wie du das Programm auf deinem eigenen Rechner unter Windows (oder Linux) zu Hause starten kannst, erfährst du im Additum zu Kapitel II.

Nach dem Starten wird dir zuerst kurz ein Startbildschirm angezeigt, auf dem einige Informationen über die verwendete Python Version zu finden sind. Wir verwenden Portable Python in der Version 3.2.5.1. Portable bedeutet in diesem Zusammenhang, dass man den Interpreter direkt verwenden kann, ohne ihn installieren zu müssen. Portable Python 3.2.5.1 basiert auf Python 3.2.5.1. Das ist zwar nicht die neuste Version von Python, dennoch bietet sie alle Funktionalitäten, die wir (später) benötigen.

Abbildung
Darstellung des Startbildschirmes des Python-Interpreters

Nachdem der Startbildschirm verschwunden ist, ist Python bzw. der Interpreter bereit.

Abbildung
Darstellung des gestarteten und einsatzbereiten Python-Interpreters unter Windows

Icon Aufgabe 3 - Linux

Starte Python bzw. den zugehörigen Interpreter!
Dies geht in zwei Schritten: Zuerst muss man ein Terminal starten und anschließend in dem Terminal den Python-Interpreter selbst starten! In der Schule findest du das Terminal unten in der Startleiste. Es hat ein kleines schwarzes Icon!

Abbildung
Icon des Terminals in der Startleiste (Schulcomputer)

Wenn sich das Terminal geöffnet hat, müssen wir dort den Befehl "python3" - ohne Anführungszeichen - eingeben. Dann startet der Computer für uns den Python(3)-Interpreter. Wenn du erfolgreich warst, sieht das "neue Fenster" mit dem Python-Interpreter ungefährt wie folgt aus:

Abbildung
Python-Interpreter im Terminal unter Linux

Wie du das Programm auf deinem eigenen Rechner unter Linux zu Hause starten kannst, unterscheidet sich ja nach der verwendeten Distribtion. Oftmals ist Python aber bereits von Hause aus installiert. Falls du Probleme hast, recherchiere im Internet oder frage deinen Lehrer!

Das die Bearbeitung der Aufgabe erfolgreich war, erkennt man - unter Linux wie unter Windows - neben dem neu erschienenen Fenster, oft Python Shell (engl. für Hülle oder Schale) genannt, daran, dass sich der Interpreter mittels

 _ 

meldet und uns damit mitteilt, dass er jetzt bereit ist. Man bezeichnet dies auch als Bereitschaftszeichen oder auf neudeutsch Prompt. Rechts vom Prompt siehst du einen Cursor, der blinkt. Den Cursor kennst du bereits aus einer Textverarbeitung. Dies signalisiert uns, dass wir hier an dieser Stelle etwas eingeben können. Die drei "größer"-Zeichen am Anfang der Eingabe erzeugt der Interpreter selbstständig, diese brauchen wir nicht mit einzugeben.

Die Shell stellt eine Verbindung (Schnittstelle) zwischen dem Interpreter und dem Benutzer bzw. Programmierer her: Wir geben dort unsere Anweisungen ein, der Python-Interpreter wandelt sie in Maschinensprache um und gibt sie an den Prozessor zur Verarbeitung weiter. Ist der Prozessor mit der Verarbeitung fertig, erhalten wir das "Ergebnis" über die Shell zurück.

So, nun wird es Zeit, unsere erste Eingabe zu tätigen. Begrüßen wir die Shell mit den Worten

Guten Tag!

Scheinbar kann der Interpreter mit unserer Eingabe nichts anfangen und gibt einen Fehler aus, statt uns freundlich zurück zu grüßen.

Abbildung
Darstellung der dargestellten Fehlermeldung

Der Hinweis "SyntaxError: invalid syntax" weißt uns darauf hin, dass wir scheinbar gegen Rechtschreibung oder Grammatik von Python verstoßen haben. Sicherlich gehört "Guten Tag!", eine deutsche Begrüßung, nicht zum Wortschatz der Sprache Python. Da der Interpreter nichts damit anfangen kann bzw. nicht weiß, was er tun soll bzw. was wir von ihm wollen, meldet er einen Fehler.

Python als Taschenrechner

Vielleicht kann Python zumindest rechnen? Probieren wir es aus!

1+2

Auf diese Eingabe erhalten wir zeitnah eine Rückmeldung. Die Antwortet lautet:

3

Wir sehen zum einen, dass Python richtig gerechnet hat und damit in der Lage sein muss, die entsprechenden Eingaben zu verarbeiten. Zum anderen sehen wir, dass Python Ein- und Ausgaben scheinbar durch die Angabe der "größer"-Zeichen trennt. Im Falle einer verlangten Eingabe werden diese in der Shell angezeigt und symbolisieren so die verlangte Eingabe. In dem obigen Kasten werden diese in der Onlineversion unsichtbar, sobald du mit der Maus den Kasten berührst. So kannst du die Eingabe problemlos kopieren, es kann sein, dass du zum Einfügen statt der gängigen Tastenkombination strg+v die Kombination strg+shift+v nutzen musst. Probieren wir noch ein Beispiel.

17+4
21

Diesmal wurden wir verstanden! Der Python-Interpreter hat unsere Eingabe verstanden, in Maschinencode umgewandelt, ausführen lassen und uns über die Shell ein Ergebnis mitgeteilt. Damit handelt es sich bei den Ausdrücken 1+2 oder 17+4, die du bereits aus dem Mathematikunterricht kennst, offensichtlich auch um syntaktisch richtige Ausdrücke in der Sprache Python. Ferner versteht Python auch, was wir von ihm wollen.

In dem oberen Kasten verschwinden bei einer Mausberührung einerseits die Zeichen des Promptes als auch die Ausgaben. Auf diese Weise wird verhindert, dass du versehentlich zu viel kopierst.

Icon Aufgabe 4

In der Übersicht des Kapitels war von zwei grundlegenden Funktionalitäten die Rede, die jede Programmiersprache bereitstellen muss. Kannst du diese aus den bisherigen Ausführungen ableiten?

Lösung: In einem ersten Schritt berechnet Python das Ergebnis der beiden Additionen. Folglich muss jede Programmiersprache in der Lage sein, grundlegende mathematische Operationen, wie Additionen, Divisionen etc., durchzuführen. Wir werden später an weiteren Beispielen noch sehen, wie wichtig mathematische Berechnungen im Rahmen der Programmierung sind. Aber keine Angst, man muss nicht gut in Mathematik sein, um ein "guter" Programmierer zu werden! Schließlich lassen wir ja den Computer für uns rechnen.
Im zweiten Schritt gibt Python das Ergebnis auf dem Bildschirm aus. Daraus kann man ableiten, dass es mittels jeder Programmiersprache möglich sein muss, Ergebnisse von Berechnungen oder Daten etc. auf dem Bildschirm oder Drucker o.ä. auszugeben. Auch für die Ausgabe werden wir später noch weitere Beispiele betrachten, die über das einzige Anzeigen von Ziffern oder Text hinausgehen.

Icon Aufgabe 5

Probiere aus, was Python sonst noch so alles berechnen kann!

Lösung: Python kann Additions-, Subtraktion-, Multiplikations- und Divisionsaufgaben lösen. Selbst Klammern stellen dabei kein Problem dar. Achtung: Möchtest du mit Dezimalzahlen rechnen, so musst du statt dem Komma einen Punkt eingeben. Das liegt daran, dass vieles aus der Sprache Python aus dem Englischen stammt. Und dort schreibt man nunmal bei den Dezimalzahlen einen Punkt statt dem Komma.

Icon Datentypen

Man unterscheidet - wie in der Mathematik auch - zwischen verschiedenen Zahlen: So unterscheidet der Computer intern zwischen ganzen Zahlen und Kommazahlen. In einigen Programmiersprachen spielt diese Unterscheidung eine wichtige Rolle und der Nutzer muss angegeben, was für eine "Art" von Zahl er verwenden will. In Python ist diese Unterscheidung anzugeben nicht nötig.

Icon Aufgabe 6

Lass das Ergebnis der folgenden Eingabe berechnen.

(2+3)**2

Gib an, welche Formel - bekannt aus dem Mathematikunterricht - in Zusammenhang zu diesem arithmetischen Ausdruck steht und welche Bedeutung **2 in diesem Zusammenhang hat?

Lösung:

Das Ergebnis ist 25. Hinter **2 verbirgt sich scheinbar die Bildung des Quadrates einer Zahl oder eines anderen arithmetischen Ausdruckes. Nach den aus dem Mathematikunterricht bekannten Rechenvorschriften, wird zuerst 2+3 berechnet und anschließend quadriert. Dahinter verbirgt sich eine Binomische Formel, genauer gesagt die erste Binomische Formel. Zum "Nachweis", dass **2 wirklich das Quadrat berechnet, kannst du weitere Beispiele prüfen:

5**2
oder
3**2
eingeben.

Du siehst, Python kann mindestens so gut rechnen wie dein Taschenrechner! Du kannst Python also in Zukunft zu Hause verwenden, wenn du etwas berechnen musst, aber gerade keinen Taschenrechner zur Hand hast.

Weiter geht's mit der Lernfortschrittskontrolle zu Kapitel I.