Inhaltsverzeichnis

Alle Kapitel aufklappen
Alle Kapitel zuklappen
Materialien zum Buch
13
Geleitwort
15
1 Programme schreiben – wie geht das?
17
2 Wie funktionieren Computer überhaupt?
21
Innenleben eines PCs
21
Eingabe, Verarbeitung, Ausgabe
22
Bits und Bytes
24
Prozessortakt – wie schnell läuft mein PC?
26
3 Python – die Programmiersprache
27
Maschinensprache – die Muttersprache des Prozessors
27
Interpreter und Compiler
28
Python – einfach und universell
29
Jython – was ist das?
30
TigerJython – deine Lernumgebung
31
4 TigerJython installieren – einfacher geht’s nicht
33
Installation unter Windows
33
Installation auf dem Mac
35
TigerJython unter Linux installieren
37
5 Die ersten Schritte – Python im Dialog
39
Direkte Befehle – die Konsole
40
Ausgabe mit Zahlen
40
Die »Syntax« muss stimmen
45
Zeichenketten statt Zahlen
46
6 Variablen – jetzt wird es flexibel
49
Variablennamen
51
Der »input«-Befehl – Eingaben zum Verarbeiten
54
7 Programme schreiben – es geht los!
57
Ein Programm in TigerJython eingeben
57
Das allererste Programm: Ein Zahlenzaubertrick
58
Zweites Programm: Ein Umrechner
60
Programme speichern
62
Eingabe, Verarbeitung, Ausgabe – diesmal mit Text
63
Rechner mit Rest
65
Das magische Quadrat
66
Variation: Magisches Quadrat mit fester Summe
70
8 Bedingungen – Was passiert, wenn …
73
»if«-Abfragen in Python
74
»if« mit »else«
77
Mehrere Bedingungen verknüpfen
79
»elif« – »else if«
80
»if« – »else« im Überblick
81
Wahr und falsch beim Verknüpfen
83
Programm: Eintrittsprüfung
84
9 Befehle und Module
87
Was sind Module?
87
Das Modul »math«
88
Das Modul »random«
92
Roulette
93
Programm: Entscheidungshilfe
94
10 Schleifen – Wiederholungen machen Programme stark
97
Die Zählschleife mit »repeat«
98
Würfeln ohne Ende
100
Schleifen verschachteln
103
Die »while«-Schleife
105
Würfelpoker
106
Klassisches Zahlenraten
109
Das kleine Einmaleins
112
Lösungsweg
112
Mehr Möglichkeiten für »while«-Schleifen
117
Endlosschleifen mit »while«
117
Schleife verlassen mit »break«
118
Schleife vorzeitig fortsetzen mit »continue«
118
Primzahlentester
119
Das Probeverfahren
119
Das Schachrätsel
124
Zins und Zinseszins
126
11 Listig: Mit Listen arbeiten
127
Zeichenketten sind Listen
127
Listen in Python
130
Wochentag nachschlagen
132
Listen per Programm erzeugen
133
Die »for«-Schleife mit einer Liste
134
Mehr Befehle, Methoden und Funktionen für Listen
137
Ein Lottozahlen-Tipp
140
Methode Nr. 1: Prüfen und bei Bedarf wiederholen
141
Methode Nr. 2: Den echten Vorgang simulieren
141
Methode Nr. 3: Mit cleveren Tricks arbeiten
142
Methode Nr. 4: Praktische eingebaute Funktionen von »random« verwenden
143
Das Lottospiel: Selbst tippen und gewinnen
144
Mehrdimensionale Listen
148
Zusammenfassung: Listen
151
12 Die Schildkröte – ein grafischer Roboter
153
Die Schildkröte steuern
154
Weitere Turtle-Befehle
162
Grafik mit Koordinaten
166
Funktionsgraphen programmieren
168
Zufallsbilder erstellen
170
Variationen: Zufallsmuster
172
Eingebaute Funktionen nutzen
175
Weitere Ideen
176
13 Funktionen selber schreiben
177
Was sind Funktionen noch mal genau?
177
Eigene Funktionen schreiben
178
Eigene Funktion »zahlwort«
182
Ein eigenes Modul erstellen
186
Zeichnen mit Funktionen
188
Rekursive Funktionen
190
14 Sound programmieren
195
Sound in Python abspielen
195
Was sind denn eigentlich Klangdateien?
195
WAV-Dateien abspielen
196
mp3-Dateien abspielen
197
Weitere Befehle für den Sound-Player
198
Eigene Musik machen
198
Sprachsynthese: Lass den Computer sprechen!
200
15 Objekte programmieren
203
Was sind Objekte?
204
Objekte in Python
204
Klassen und Instanzen
207
Objekte für alles
212
16 Eigene Objekte definieren
215
Die Funktion »__init__«
216
Eigene Methoden definieren
218
Die Funktion »__str__«
220
Ableitung und Vererbung – ein Supertoaster
223
17 gamegrid – Spiele bauen mit Objekten
227
Ein Spielfeld erzeugen
228
Actor – jetzt kommen die Figuren ins Spiel
232
Der Fisch soll leben
234
Spielfiguren mit Eigenleben
236
Das Spielfeld kontrolliert den Takt
239
Die Steuerungsleiste in gamegrid
244
18 Steuerung und Ereignisse in gamegrid
247
Erweiterung der Spielidee
252
Kollision: Interaktion zwischen Spielfiguren
253
Klang hinzufügen
258
Ein Spiel braucht Gegner
259
19 Neues Spiel: Breakball
267
Das Spielprinzip
267
Elemente des Programms
267
Erste Schritte: Spielfeld und Ball
268
Nächstes Element: Das Brett
273
Dritter Schritt: Die Blöcke
277
Die Spielsteuerung
282
Sound
286
Feeling
286
Variationen
286
Regeln
287
20 Space Attack – ein Klassiker
289
Das Spielprinzip
289
Technik: Was brauchen wir?
289
Das Spielfeld
290
Das Raumschiff
290
Jetzt wird geschossen
292
Die Aliens
296
Erweiterungen
306
Explosionen
306
Sound
307
Spielende
308
Weiterer Ausbau: deine Aufgabe
309
21 Flappy Ball – geschicktes Hüpfen
311
Die Spielidee
311
Benötigte Elemente
311
Das Spielfeld
312
Der Ball
312
Die Ballsteuerung mit der Maus
314
Die Balken – als Spielgegner
317
Das Spiel erweitern und verbessern
324
Spielstart
324
Spielende
325
Sound hinzufügen
326
Weitere Ideen
326
22 TicTacToe – Brettspiele mit gamegrid
329
Das Spielprinzip
329
Welche Elemente werden benötigt?
329
Das Spielfeld
330
Auf die Maus reagieren
332
Die Spielverwaltung
334
Ein Objekt für die Spieldaten
335
Erweiterungen von TicTacToe
343
Sound
344
Richtiges Spielende
344
Der Computer als Gegner
344
Am einfachsten: Die Zufallsmethode
345
Die Methode »zufallsZug()«
345
Cleverer: Die doppelte Prüfmethode
349
Echte KI: Die Minimax-Methode
353
23 Wie geht es weiter?
355
Mit TigerJython weitermachen
356
Andere Python-Systeme
357
Andere Programmiersprachen?
358
Index
361