Sande | Hello World! | E-Book | www.sack.de
E-Book

E-Book, Deutsch, 501 Seiten

Sande Hello World!

Programmieren für Kids und andere Anfänger
1. aktualisierte und erweiterte Auflage 2014
ISBN: 978-3-446-43814-9
Verlag: Carl Hanser
Format: PDF
Kopierschutz: 1 - PDF Watermark

Programmieren für Kids und andere Anfänger

E-Book, Deutsch, 501 Seiten

ISBN: 978-3-446-43814-9
Verlag: Carl Hanser
Format: PDF
Kopierschutz: 1 - PDF Watermark



HELLO WORLD//
- Alle Erklärungen der Konzepte in einfacher Sprache
- Sehr viele Bilder, Cartoons und lustige Beispiele
- Umfassende Fragen und Aufgaben zum Üben und Lernen
- Farbig illustriert


In diesem Buch lernst Du, mit dem Computer in seiner Sprache zu sprechen. Willst du ein Spiel erfinden? Eine Firma gründen? Ein wichtiges Problem lösen? Als ersten Schritt lernst Du, eigene Programme zu schreiben. Programmieren ist eine tolle Herausforderung, und dieses Buch macht Dir den Einstieg leicht.


Diese neue Ausgabe von Hello World! zeigt Dir in einfacher und ansprechender Weise die Welt der Computerprogrammierung. Warren Sande hat es gemeinsam mit seinem Sohn Carter geschrieben, und sie haben sich auch viele lustige Beispiele ausgedacht, mit denen Du prima lernen kannst. Das Buch wurde von Pädagogen überarbeitet und eignet sich für Kinder genauso wie für ihre Eltern.


Du brauchst keine Programmierkenntnisse mitzubringen, sondern nur zu wissen, wie man einen Computer bedient. Wenn Du ein Programm starten und eine Datei speichern kannst, reicht das schon!


Hello World! arbeitet mit Python. Diese Programmiersprache ist besonders leicht zu erlernen. Mit den humorvollen Beispielen lernst Du die Grundlagen des Programmierens kennen, wie z.B. Schleifen, Entscheidungen, Eingaben und Ausgaben, Datenstrukturen, Grafiken und vieles mehr.


AUS DEM INHALT //
Speicher und Variablen // Datentypen // GUIs – Grafische Benutzeroberflächen // Immer diese Entscheidungen // Schleifen // Nur für dich – Kommentare // Geschachtelte und variable Schleifen // Listen und Wörterbücher // Funktionen // Objekte // Module // Sprites und Kollisionserkennung // Ereignisse // Sound // Ausgabeformatierung und Strings // Das Zufallsprinzip // Computersimulationen

Sande Hello World! jetzt bestellen!

Weitere Infos & Material


1;Inhalt;9
2;Vorwort;17
2.1;Was ist Programmieren?;17
2.2;Python – eine Sprache für uns und den Computer;18
2.3;Wozu soll ich Programmieren lernen?;19
2.4;Warum Python?;20
2.5;Die lustigen Sachen;21
2.6;Das ist neu in der zweiten Auflage ;22
3;Danksagungen;23
3.1;Danksagungen für die zweite Auflage;24
4;Über dieses Buch;25
4.1;Was du brauchst;25
4.2;Was du nicht brauchst;26
4.3;Carter sagt;27
4.4;An Eltern und Lehrer;28
5;1 Erste Schritte;29
5.1;Python installieren;29
5.2;Python mit IDLE starten;31
5.3;Anweisungen bitte;32
5.4;Mit Python interagieren;34
5.5;Programmierzeit;36
5.6;Das erste Programm ausführen;37
5.7;Wenn etwas schiefgeht;38
5.8;Dein zweites Programm;41
6;2 Merk’s dir – Speicher und Variablen;44
6.1;Eingabe, Verarbeitung, Ausgabe;44
6.2;Namen;46
6.3;Was ist ein Name?;50
6.4;Zahlen und Strings;51
6.5;Wie „variabel“ sind sie?;52
6.6;Das neue Ich;53
7;3 Einfache Mathematik;56
7.1;Die vier Grundrechenarten;56
7.2;Operatoren;59
7.3;Punktrechnung vor Strichrechnung;59
7.4;Zwei weitere Operatoren;61
7.5;Sehr große und sehr kleine Zahlen;63
8;4 Datentypen;68
8.1;Typen ändern;68
8.2;Mehr Informationen mit type().;71
8.3;Typumwandlungsfehler;72
8.4;Anwendung von Typumwandlungen;72
9;5 Eingabe;74
9.1;raw_input().;75
9.2;Der print-Befehl und das Komma;76
9.3;Zahlen eingeben;78
9.4;Eingabe aus dem Internet;80
10;6 GUIs – Grafische Benutzeroberflächen;83
10.1;Was ist eine GUI?;83
10.2;Unsere erste GUI;83
10.3;GUI-Eingabe;85
10.4;Welches Eis hättest du gerne?;86
10.5;Nochmal Zahlen raten;90
10.6;Andere GUI-Teile;91
11;7 Immer diese Entscheidungen;93
11.1;Test, Test;93
11.2;Einrücken;95
11.3;Seh’ ich jetzt schon doppelt?;96
11.4;Andere Arten von Tests;97
11.5;Was passiert, wenn der Test „falsch“ ergibt?;98
11.6;Mehrere Bedingungen testen;100
11.7;Das Schlüsselwort „and“;101
11.8;Das Schlüsselwort „or“;102
11.9;Das Schlüsselwort „not“;102
12;8 Schleifen;106
12.1;Zählschleifen;106
12.2;Verwendung von Zählschleifen;109
12.3;Eine Abkürzung: range().;110
12.4;Eine Sache des Stils – Namen von Schleifenvariablen;112
12.5;Zählen in Schritten;115
12.6;Zählen mit Zahlen;117
12.7;Da wir gerade dabei sind …;117
12.8;Ausstieg aus einer Schleife – break und continue.;118
13;9 Nur für dich – Kommentare;122
13.1;Kommentare hinzufügen;122
13.2;Einzeilige Kommentare;123
13.3;Zeilenende-Kommentare;123
13.4;Mehrzeilige Kommentare;123
13.5;Strings mit drei Anführungszeichen;124
13.6;Kommentierstil;125
13.7;Kommentare in diesem Buch;125
13.8;Auskommentieren;125
14;10 Zeit zum Spielen;127
14.1;Skier;127
15;11 Geschachtelte und variable Schleifen;132
15.1;Geschachtelte Schleifen;132
15.2;Variable Schleifen;134
15.3;Variable, geschachtelte Schleifen;135
15.4;Noch mehr variable, geschachtelte Schleifen;137
15.5;Verwendung von geschachtelten Schleifen;138
16;12 Listen und Wörterbücher;146
16.1;Was ist eine Liste?;146
16.2;Eine Liste erstellen;147
16.3;Elemente in eine Liste einfügen;147
16.4;Wozu der Punkt?;148
16.5;Listen können alles Mögliche speichern;149
16.6;Elemente von einer Liste abrufen;149
16.7;Listen in Scheiben schneiden: „Slicing“;150
16.8;Elemente ändern;152
16.9;Andere Möglichkeiten der Listenerweiterung;153
16.10;Elemente aus einer Liste löschen;155
16.11;Eine Liste durchsuchen;156
16.12;Eine Liste per Schleife durchlaufen;158
16.13;Listen sortieren;158
16.14;Veränderlich und unveränderlich;162
16.15;Listen von Listen: Tabellen;163
16.16;Wörterbücher;166
17;13 Funktionen;173
17.1;Funktionen – die Bausteine;173
17.2;Eine Funktion aufrufen;175
17.3;Argumente an eine Funktion übergeben;177
17.4;Funktionen mit mehreren Argumenten;179
17.5;Funktionen, die einen Wert zurückgeben;181
17.6;Geltungsbereich von Variablen;183
17.7;Globale Variablen erzwingen;186
17.8;Tipps zur Benennung von Variablen;187
18;14 Objekte;189
18.1;Objekte im wirklichen Leben;190
18.2;Objekte in Python;190
18.3;Objekt = Attribute + Methoden;191
18.4;Was soll der Punkt?;192
18.5;Objekte erstellen;192
18.6;Eine Beispielklasse – HotDog;198
18.7;Die Daten verbergen;202
18.8;Polymorphismus und Vererbung;203
18.9;Vorausdenken;205
19;15 Module;208
19.1;Was ist ein Modul?;208
19.2;Warum Module verwenden?;208
19.3;Eimerweise Legosteine;209
19.4;Wie werden Module erstellt?;209
19.5;Wie werden Module verwendet? ;210
19.6;Namensräume;211
19.7;Standardmodule;214
20;16 Grafik;218
20.1;Hilfe holen – Pygame;218
20.2;Ein Pygame-Fenster;218
20.3;In das Fenster zeichnen;220
20.4;Einzelne Pixel;230
20.5;Bilder;235
20.6;Jetzt kommt Bewegung in die Sache!;237
20.7;Animation;238
20.8;Weichere Animationen;240
20.9;Den Ball abprallen lassen;241
20.10;Den Ball umbrechen;244
21;17 Sprites und Kollisionserkennung;247
21.1;Sprites;247
21.2;Peng! Kollisionserkennung ;253
21.3;Die Zeit messen;257
22;18 Eine neue Eingabeart: Ereignisse;262
22.1;Ereignisse;262
22.2;Tastaturereignisse;264
22.3;Mausereignisse;269
22.4;Timer-Ereignisse;271
22.5;Zeit für noch ein Spiel: PyPong;274
23;19 Sound;286
23.1;Pygame hilft – mit dem mixer.;286
23.2;Sounds erzeugen oder Sounds abspielen;287
23.3;Sounds abspielen;287
23.4;Lautstärke regeln;290
23.5;Musik wiederholen;292
23.6;Sounds für PyPong;293
23.7;Noch mehr coole Sounds;294
23.8;Musik für PyPong;297
24;20 Noch mehr GUIs;302
24.1;Mit PyQt arbeiten;302
24.2;Action in der GUI;307
24.3;Die Rückkehr der Ereignishandler;310
24.4;Den Button bewegen;311
24.5;Weitere nützliche GUIs;311
24.6;TempGUI;312
24.7;Was steht auf dem Menü?;318
25;21 Ausgabeformatierung und Strings;325
25.1;Neue Zeilen;326
25.2;Horizontale Abstände: Tabulatoren;328
25.3;Variablen in Strings einfügen;330
25.4;Zahlenformatierung;331
25.5;Formatieren – der neue Weg;337
25.6;Strings und so;338
26;22 Ein- und Ausgabe mit Dateien;347
26.1;Was ist eine Datei?;348
26.2;Dateinamen;348
26.3;Speicherorte;349
26.4;Eine Datei öffnen;353
26.5;Eine Datei lesen;354
26.6;Text- und Binärdateien;357
26.7;Schreiben in eine Datei;358
26.8;Daten in Dateien speichern: pickle.;362
26.9;Es ist mal wieder Spielzeit: Galgenmännchen;364
27;23 Das Zufallsprinzip;372
27.1;Was ist Zufall?;372
27.2;Würfeln;373
27.3;Ein Kartenspiel erstellen;379
27.4;Crazy Eights – Verrückte Achter;383
28;24 Computersimulationen;397
28.1;Die Realität modellieren;397
28.2;Mondlandung;398
28.3;Die Zeit festhalten;403
28.4;Zeitobjekte;404
28.5;Die Zeit in einer Datei speichern;409
28.6;Ein virtuelles Haustier;410
29;25 So entsteht der Skiläufer;422
29.1;Der Skiläufer;422
29.2;Die Hindernisse;426
30;26 Python Battle;436
30.1;Python Battle;436
30.2;Einen Roboter für Python Battle erstellen;438
30.3;Ein komplizierterer Roboter;440
30.4;Das Koordinatensystem;441
31;27 Und wie geht's weiter?;446
31.1;Für jüngere Programmierer;446
31.2;Python;447
31.3;Spieleprogrammierung und Pygame;447
31.4;Weitere Spieleprogrammierung (aber nicht mit Python);448
31.5;BASIC;448
31.6;Apps fürs Handy;448
31.7;Schau dich um;449
32;Anhang A: Regeln für Variablennamen;450
33;Anhang B: Unterschiede zwischen Python.2 und 3;452
34;Anhang C: Lösungen zu den Übungen;456
35;Verzeichnis der Listings;488
36;Index;491
37;Listing.1.1 Unser erstes richtiges Programm;36
38;Listing.1.2 Zahlen raten;41
39;Listing.5.1 Einen String mit raw_input() bekommen;75
40;Listing.5.2 Was tut das Komma?;76
41;Listing.5.3 Temperaturen umrechnen mit raw_input();78
42;Listing.5.4 Eingabe aus einer Datei im Internet;80
43;Listing.6.1 Eingabe mit Buttons;86
44;Listing.6.2 Eingabe mit Choicebox;87
45;Listing.6.3 Eingabe mit Enterbox;88
46;Listing.6.4 So werden Standardargumente angelegt;89
47;Listing.6.5 Zahlen raten mit EasyGui;90
48;Listing.7.1 Verwendung der Vergleichsoperatoren;98
49;Listing.8.1 Eine ganz einfache for-Schleife;107
50;Listing.8.2 Bei jedem Durchlauf durch die for-Schleife geschieht etwas Anderes;108
51;Listing.8.3 Die Achterreihe ausgeben;109
52;Listing.8.4 Eine Schleife mit range();110
53;Listing.8.5 Mit range() das kleine Einmaleins mit 8 erhalten;112
54;Listing.8.6 Bereit zum Abheben?;116
55;Listing.8.7 Wer ist ein super Typ?;117
56;Listing.8.8 Eine Bedingungsschleife (oder while-Schleife);118
57;Listing.8.9 Verwendung von continue in einer Schleife;119
58;Listing.10.1 Skier;128
59;Listing.11.1 Drei Multiplikationstabellen auf einmal ausgeben;133
60;Listing.11.2 Eine variable, geschachtelte Schleife;135
61;Listing.11.3 Sternenblöcke mit doppelt geschachtelten Schleifen;136
62;Listing.11.4 Eine kniffligere Version der Sternenblöcke;137
63;Listing.11.5 Schleifenvariablen in geschachtelten Schleifen ausgeben;137
64;Listing.11.6 Wurstkombinationen;140
65;Listing.11.7 Das Wurstprogramm mit Kalorienzähler;143
66;Listing.13.1 Eine Funktion erstellen und benutzen;174
67;Listing.13.2 Ein Argument an eine Funktion übergeben;177
68;Listing.13.3 Funktionen mit zwei Argumenten;180
69;Listing.13.4 Eine Funktion erstellen und verwenden, die einen Wert zurückgibt;183
70;Listing.13.5 Versuch, eine lokale Variable auszugeben;184
71;Listing.13.6 Eine globale Variable in einer Funktion verwenden;185
72;Listing.13.7 Versuch, eine globale Variable in einer Funktion zu ändern;186
73;Listing.14.1 Eine einfache Ball-Klasse;192
74;Listing.14.2 Die Ball-Klasse verwenden;193
75;Listing.14.3 Eine __init__()-Methode hinzufügen;194
76;Listing.14.4 Mit __str__() die Ausgabe des Objekts ändern;196
77;Listing.14.5 Der Anfang unseres Hot Dog-Programms;199
78;Listing.14.6 Die Klasse HotDog mit braten(), zutatHinzufuegen() und __str__();200
79;Listing.15.1 Ein Modul erstellen;209
80;Listing.15.2 Ein Modul verwenden;210
81;Listing.15.3 Das Programm zum Schlafen schicken;215
82;Listing.16.1 Ein Pygame-Fenster erstellen;219
83;Listing.16.2 Das Pygame-Fenster korrekt arbeiten lassen;219
84;Listing.16.3 Einen Kreis zeichnen;220
85;Listing.16.4 Der Kreis rückt in die Fenstermitte;225
86;Listing.16.5 Moderne Kunst mit draw.rect;228
87;Listing.16.6 Moderne Kunst mit Farbe;229
88;Listing.16.7 Kurven aus vielen kleinen Rechtecken zeichnen;231
89;Listing.16.8 Eine durchgehende Sinuskurve;232
90;Listing.16.9 Das geheimnisvolle Punkteverbinden;234
91;Listing.16.10 Ein Wasserball-Bild in einem Pygame-Fenster anzeigen;235
92;Listing.16.11 Wir versuchen, den Wasserball zu bewegen;238
93;Listing.16.12 Nächster Versuch, einen Wasserball zu bewegen;239
94;Listing.16.13 Den Wasserball geschmeidig bewegen;240
95;Listing.16.14 Einen Wasserball abprallen lassen;242
96;Listing.16.15 Ballspiel in 2-D;243
97;Listing.16.16 Den Wasserball umbrechen;244
98;Listing.17.1 Mit Sprites mehrere Bälle auf den Bildschirm laden;249
99;Listing.17.2 Bälle mithilfe von Sprites bewegen;252
100;Listing.17.3 Eine Sprite-Gruppe statt einer Liste verwenden;254
101;Listing.17.4 Clock und get_fps() im Wasserballprogramm;260
102;Listing.18.1 Das Ball-Programm mit Sprites und uhr.tick();265
103;Listing.18.2 Ball mit Aufwärts- und Abwärts-Pfeil;267
104;Listing.18.3 Den Ball mit einem Timer-Ereignis auf und ab bewegen;273
105;Listing.18.4 Die erste Version von PyPong;277
106;Listing.18.5 Das endgültige PyPong-Programm;282
107;Listing.19.1 Sounds in Pygame ausprobieren;289
108;Listing.19.2 Musik spielen;289
109;Listing.19.3 Musik und Sound mit Lautstärkeregelung;291
110;Listing.19.4 Das Ende des Songs abwarten;292
111;Listing.19.5 PyPong mit Sound und Musik;298
112;Listing.20.1 Dieser PyQt-Code ist mindestens nötig ;308
113;Listing.20.2 Einen Ereignishandler für den Button aus Listing.20.1 einfügen;309
114;Listing.20.3 Programm zur Temperaturumrechnung;316
115;Listing.20.4 Vollständiges Programm zur Temperaturumrechnung mit Menüs;321
116;Listing.21.1 Ein Programm, das Quadrat- und Kubikzahlen ausgibt;329
117;Listing.22.1 Datei öffnen und lesen;355
118;Listing.22.2 readline() mehrmals verwenden;356
119;Listing.22.3 Anfügenmodus verwenden;360
120;Listing.22.4 Schreibmodus für neue Dateien;360
121;Listing.22.5 Schreibmodus für vorhandene Dateien;361
122;Listing.22.6 Eine Liste mit pickle in einer Datei speichern;363
123;Listing.22.7 Dateien mit load() entpickeln;363
124;Listing.22.8 Das komplette Galgenmännchen-Programm;368
125;Listing.23.1 Tausendmal würfeln mit dem elfseitigen Würfel;374
126;Listing.23.2 Tausendmal würfeln mit zwei sechsseitigen Würfeln;375
127;Listing.23.3 Zehnmal hintereinander Kopf;378
128;Listing.23.4 Die Klasse Card;381
129;Listing.23.5 Ein Kartenspiel erstellen;382
130;Listing.23.6 Die Hauptschleife von Crazy Eights;385
131;Listing.23.7 Das Blatt des Spielers anzeigen;389
132;Listing.23.8 Der Spielzug des Spielers;390
133;Listing.23.9 Neue Farbe erfragen, wenn der Spieler eine 8 ablegt;391
134;Listing.23.10 Der Spielzug des Computers;392
135;Listing.23.11 Die Hauptschleife inklusive Punktständen;394
136;Listing.24.1 Mondlandung;400
137;Listing.24.2 Zeitdifferenzen messen: Tippgeschwindigkeit;408
138;Listing.24.3 Die Zeit mit pickle in einer Datei speichern;410
139;Listing.24.4 VirtuellesHaustier.py;416
140;Listing.25.1 Das Skiläufer-Spiel erstellen – nur der Skiläufer;425
141;Listing.25.2 Das Skiläufer-Spiel erstellen – nur die Hindernisse;429
142;Listing.25.3 Skiläufer und Hindernisse zusammen;431
143;Listing.26.1 Die vollständige Roboter-KI;440
144;Listing.26.2 Ein komplizierterer Roboter;443



Ihre Fragen, Wünsche oder Anmerkungen
Vorname*
Nachname*
Ihre E-Mail-Adresse*
Kundennr.
Ihre Nachricht*
Lediglich mit * gekennzeichnete Felder sind Pflichtfelder.
Wenn Sie die im Kontaktformular eingegebenen Daten durch Klick auf den nachfolgenden Button übersenden, erklären Sie sich damit einverstanden, dass wir Ihr Angaben für die Beantwortung Ihrer Anfrage verwenden. Selbstverständlich werden Ihre Daten vertraulich behandelt und nicht an Dritte weitergegeben. Sie können der Verwendung Ihrer Daten jederzeit widersprechen. Das Datenhandling bei Sack Fachmedien erklären wir Ihnen in unserer Datenschutzerklärung.