Teil 1: Einführung
Lernziele
- Erklären, was ein Programm und was eine Programmiersprache ist
- Text mit
- Zeichenketten verbinden (
+) und vervielfachen (*)- Zeilenumbrüche und Tabulatoren mit
\nund\terzeugen- Kommentare schreiben und einfache Fehlermeldungen einordnen
Neue Befehle und Zeichen:
print()gibt Text aus#leitet einen Kommentar ein+verbindet zwei Zeichenketten*vervielfacht eine Zeichenkette\nerzeugt einen Zeilenumbruch\terzeugt einen Tabulator\\erzeugt einen Backslash
Einführung
Ein Computerprogramm ist eine Folge von Befehlen, die dem Computer Anweisungen geben. So wie Sätze in menschlichen Sprachen wie Deutsch oder Französisch ausgedrückt werden, wird jedes Programm in einer Programmiersprache ausgedrückt.
Unsere Wahl fällt auf Python. Die Syntax von Python, also die Regeln, nach denen Programme aufgebaut sind, ist verhältnismässig einfach. Trotzdem lassen sich damit beliebig komplexe Programme schreiben. Die meisten Programmiersprachen bauen auf denselben Prinzipien auf: Wer Python beherrscht, lernt andere Sprachen deutlich leichter.
Warum ausgerechnet Python?Plattformunabhängig: Ein Python-Programm läuft unter Windows, macOS und Linux gleichermassen.
Open Source: Der Quelltext von Python ist frei zugänglich. Alle können zur Entwicklung beitragen, und der Zugriff bleibt auch in Zukunft gesichert.
Das erste Programm
print("Hallo, Welt!")
Dieses Programm besteht aus einem einzigen Befehl und erzeugt eine einzeilige Ausgabe:
Hallo, Welt!
Unsere Programmierumgebung: WebTigerPythonWir programmieren im Browser unter
https://webtigerpython.ethz.ch. Du musst nichts installieren und nichts speichern: Code eintippen, aufRunklicken, fertig. Die Ausgabe erscheint im Fenster darunter.Willst du zu Hause weiterarbeiten, öffnest du dieselbe Adresse. Deine Programme kannst du über den Link in der Adresszeile sichern oder als Datei herunterladen.
Die Bestandteile von
Weicht man davon ab, gibt es eine Fehlermeldung. Probiere aus, was passiert, wenn die Anführungszeichen fehlen, und was, wenn die Klammern fehlen:
print(Hallo, Welt!)
print "Hallo, Welt!"
Der Computer beendet dann die Ausführung und meldet den Fehler. Das ist nichts Schlimmes: Fehlermeldungen sind die wichtigste Hilfe beim Programmieren. In Teil 6 schauen wir sie uns genauer an.
KommentareZeilen, die mit einem Hashtag
#beginnen (Alt+3), werden von Python ignoriert. Sie sind für Menschen gedacht, nicht für den Computer.# Dieses Programm begrüsst die Klasse print("Hallo, 3d!")Gewöhne dir an, deine Programme zu kommentieren. Spätestens in drei Wochen bist du dir selbst dankbar dafür.
Aufgaben
Aufgabe 1.1Schreibe ein Programm, das folgende Ausgabe erzeugt:
Bonjour, tout le monde!
Aufgabe 1.2Schreibe ein Programm, das zwei Wörter miteinander verbindet. Wörter verbindet man, indem man sie mit einem
+aneinanderhängt, z.B."Du" + "rchsage".
Aufgabe 1.3Wörter lassen sich auch vervielfachen:
print(3 * "KZI")gibtKZIKZIKZIaus. Gib deinen Namen 10'000-mal aus. Was passiert, wenn der Faktor sehr gross wird?
Aufgabe 1.4Mit
\nerzeugst du einen Zeilenumbruch mitten im Text. Den Backslash\tippst du auf dem Mac mit Alt+Shift+7, unter Windows mit AltGr und der Taste<links neben dem Y. Schreibe die folgende Adresse mit einer einzigenKantonsschule Zimmerberg Steinacherstrasse 101 8804 Au ZH
Aufgabe 1.5Finde heraus, was das Zeichen
\tbewirkt. Schreibe ein Programm, das die folgende Tabelle ausgibt:Name Vorname Klasse Muster Anna 3d
Aufgabe 1.6Schreibe ein Programm, das zwei Zahlen addiert und das Resultat ausgibt.
Aufgabe 1.7Recherchiere, was LOC bzw. SLOC in der Informatik bedeutet, und wie viele LOC zum Beispiel Minecraft hat.
Aufgabe 1.8
Aufgabe 1.9Zeichne einen Rahmen aus Sternchen. Löse die Aufgabe zuerst mit vier
Weitere Aufgaben
Zusatzaufgabe 1.10Weil der Backslash je nach folgendem Zeichen etwas anderes bewirkt (
\n,\t), kann man ihn nicht einfach so ausgeben. Recherchiere, wie man mit
Zusatzaufgabe 1.11Gib 100 Lorem-Ipsum-Wörter aus (
https://www.loremipsum.de) und füge an geeigneten Stellen Zeilenumbrüche ein, damit die Ausgabe lesbar bleibt.
Zusatzaufgabe 1.12Zeichne mit
*und\n.
Zusatzaufgabe 1.13Zeichne einen Tannenbaum mit fünf Reihen und einem Stamm, genau wie unten. Setze
*,+und\nso ein, dass du möglichst wenig tippst.* *** ***** ******* ********* |
Zusatzaufgabe 1.14Was passiert bei
print("Hallo" + 3)? Und beiprint("Hallo" * 3)? Erkläre den Unterschied in eigenen Worten.