Programmieren trainieren - Mit über 130 Workouts in Java und Python

Luigi Lo Iacono, Stephan Wiefling, Michael Schneider

Programmieren trainieren

Mit über 130 Workouts in Java und Python

2020

648 Seiten

Format: PDF, ePUB, Online Lesen

E-Book: €  29,99

E-Book kaufen

E-Book kaufen

ISBN: 9783446460577

 

Inhalt

6

Vorwort

18

Danksagung

20

1 Einleitung

22

1.1 Wozu sollte ich programmieren lernen?

22

1.2 Wie kann mir dieses Buch dabei helfen?

23

1.3 Was muss ich mitbringen?

23

1.4 Wie geht das vonstatten?

24

1.5 Was muss ich sonst noch wissen?

26

2 Einführung in die Programmierung

28

2.1 Warmup

28

2.2 Workout

32

W.2.1 Three-Two-One – Mein erstes Programm

32

W.2.2 Weihnachtsbaum

33

W.2.3 Perlenkette

35

W.2.4 Die erste Zeichnung

36

W.2.5 Raupe Allzeitappetit

38

W.2.6 Klötzchen-Kunst

39

W.2.7 Nachteule

40

W.2.8 Ghettoblaster

41

W.2.9 Hallo Bello!

43

W.2.10 Haus

44

W.2.11 Daumen

45

3 Variablen, Datentypen, Operatoren und Ausdrücke

46

3.1 Warmup

46

3.2 Workout

49

W.3.1 Einfache Rechenaufgaben

49

W.3.2 Perlenkette 2.0

50

W.3.3 Blutalkoholkonzentration

51

W.3.4 Stoffwechselrate

53

W.3.5 Baumstammvolumen

55

W.3.6 Körperoberfläche

56

W.3.7 RGB nach CMYK

57

W.3.8 Tic-Tac-Toe-Spielfeld

59

W.3.9 Haus mit Garage

60

W.3.10 Fußballtor

61

4 Kontrollstrukturen

64

4.1 Warmup

64

4.2 Workout

68

W.4.1 Maximum bestimmen

68

W.4.2 Summe berechnen

69

W.4.3 Tippspiel

70

W.4.4 PIN-Code-Generator

71

W.4.5 Dominosteine

72

W.4.6 Radialer Farbverlauf

73

W.4.7 Ladevorgang-Rädchen

74

W.4.8 Windrad

76

W.4.9 Rotierte Dreiecke

77

W.4.10 Moderne Kunst

78

W.4.11 Schachbrett

80

W.4.12 Sinuskurve

81

W.4.13 Zahlen-Palindrom

82

W.4.14 Interaktiver Button

83

W.4.15 Ebbe und Flut berechnen

85

W.4.16 Titschender Ball

86

5 Funktionen

88

5.1 Warmup

88

5.2 Workout

90

W.5.1 Endliches Produkt

90

W.5.2 Fakultät

91

W.5.3 Konfektionsgröße

92

W.5.4 Schaltjahr Prüfung

93

W.5.5 Literzahlen umwandeln

94

W.5.6 LKW-Maut

95

W.5.7 Analoger Uhrzeiger

96

W.5.8 Körperoberfläche 2.0

97

W.5.9 Sportwetten

98

W.5.10 GPS-Luftlinie

100

W.5.11 IBAN-Generator

102

W.5.12 Sanduhr

103

W.5.13 Der faire Würfel

104

W.5.14 Quadrat mit Kreisausschnitten

105

W.5.15 Wurfparabel

107

W.5.16 Bogenschießen-Spiel

109

W.5.17 Mondphase berechnen

111

W.5.18 Tortendiagramm

113

W.5.19 Pendelanimation

115

6 Arrays

118

6.1 Warmup

118

6.2 Workout

121

W.6.1 Wochentag

121

W.6.2 Tankfüllung

123

W.6.3 Rückwärtsausgabe

124

W.6.4 Bildvergrößerung

125

W.6.5 Partnervermittlung

126

W.6.6 Sitzplatzreservierung

127

W.6.7 Platztausch

128

W.6.8 Minimale Distanz

129

W.6.9 Morsecode

130

W.6.10 Endlose Animation

131

W.6.11 Spiegeln

132

W.6.12 Reflexion

133

W.6.13 Greenscreen

135

W.6.14 Bild umdrehen und invertieren

136

W.6.15 Bild mit Schatten

137

W.6.16 Bild rotieren

138

W.6.17 Bildverkleinerung

139

W.6.18 Minimale Punktdistanz

140

W.6.19 Glatte Kurven

142

W.6.20 Bildausschnitt

144

W.6.21 Bild mit Rahmen

145

W.6.22 Memory-Spielfeldgenerator

146

W.6.23 Sudoku-Check

148

W.6.24 Medianfilter

149

W.6.25 Geldautomat

151

W.6.26 Postleitzahlen visualisieren

152

W.6.27 Dreiecksfilter

154

7 Strings und Stringverarbeitung

156

7.1 Warmup

156

7.2 Workout

158

W.7.1 String-Kompression

158

W.7.2 Split-Funktion

159

W.7.3 Geldschein-Blütencheck

160

W.7.4 Starkes Passwort

161

W.7.5 E-Mail-Check

162

W.7.6 Prüfen auf eine korrekte Klammerung

163

W.7.7 Sternchenmuster

164

W.7.8 URL-Encoding

165

W.7.9 Telefonbuch bearbeiten

166

W.7.10 Webserver-Antwort verarbeiten

168

W.7.11 IMDB-Einträge verarbeiten

170

W.7.12 Geheimsprache

171

W.7.13 Ähnlich klingende Wörter

172

W.7.14 Textrahmen

174

W.7.15 JSON-Array

175

W.7.16 Barcode-Generator

176

W.7.17 Kennzeichenverarbeitung

178

8 Objektorientierung

180

8.1 Warmup

180

8.2 Workout

183

W.8.1 Schrittzähler

183

W.8.2 Body-Mass-Index

185

W.8.3 Songtextsuche

187

W.8.4 Passwortklasse

188

W.8.5 Kopffitness

190

W.8.6 Fernbedienung

191

W.8.7 Stoppuhr

192

W.8.8 Druckerwarteschlange

193

W.8.9 Tic Tac Toe

195

W.8.10 Zwischenablage

197

W.8.11 Temperaturgraph

198

W.8.12 Ambient Light

200

W.8.13 Verschlüsselung

204

W.8.14 Mastermind

206

W.8.15 Parteistimmen

208

9 Referenzdatentypen

210

9.1 Warmup

210

9.2 Workout

212

W.9.1 Kreis-Klasse

212

W.9.2 Mathematischer Bruch

213

W.9.3 Highscore-Liste

214

W.9.4 Adressbuch

215

W.9.5 Digitaler Bilderrahmen

217

W.9.6 Musikalbenanwendung

218

W.9.7 Koch-Website

220

W.9.8 Hotelzimmerverwaltung

222

W.9.9 Flughafen-Check-in

224

W.9.10 Polygonzug

226

W.9.11 Twitterwall

228

W.9.12 Fototagebuch

230

W.9.13 Partygäste

232

W.9.14 Raumbelegung

234

10 Vererbung

238

10.1 Warmup

238

10.2 Workout

240

W.10.1 Online-Shop

240

W.10.2 Gewässer

242

W.10.3 To-do-Liste

243

W.10.4 Lampen

245

W.10.5 Meeting-Protokoll

246

W.10.6 E-Book

248

W.10.7 Zoo

250

W.10.8 Audioeffekt-Player

251

W.10.9 Fahrtenbuch

252

W.10.10 Webseitengenerator

253

A Lösungen in Java

256

A.1 Download und Verwendung der elektronischen Lösungen

256

A.1.1 Download von GitHub

256

A.1.2 Öffnen der Programme

257

A.1.3 Tipp: Debugger

258

A.2 Einführung in die Programmierung

259

A.2.1 Three-Two-One – Mein erstes Programm

259

A.2.2 Weihnachtsbaum

259

A.2.3 Perlenkette

259

A.2.4 Die erste Zeichnung

260

A.2.5 Nachteule

260

A.2.6 Raupe Allzeitappetit

261

A.2.7 Klötzchen-Kunst

261

A.2.8 Ghettoblaster

262

A.2.9 Hallo Bello!

263

A.2.10 Haus

265

A.2.11 Daumen

265

A.3 Variablen, Datentypen, Operatoren und Ausdrücke

267

A.3.1 Einfache Rechenaufgaben

267

A.3.2 Perlenkette 2.0

268

A.3.3 Blutalkoholkonzentration

268

A.3.4 Stoffwechselrate

269

A.3.5 Baumstammvolumen

269

A.3.6 Körperoberfläche

269

A.3.7 RGB nach CMYK

270

A.3.8 Tic-Tac-Toe-Spielfeld

270

A.3.9 Haus mit Garage

271

A.3.10 Fußballtor

272

A.4 Kontrollstrukturen

274

A.4.1 Maximum bestimmen

274

A.4.2 Summe berechnen

274

A.4.3 Tippspiel

275

A.4.4 PIN-Code-Generator

275

A.4.5 Dominosteine

276

A.4.6 Radialer Farbverlauf

276

A.4.7 Ladevorgang-Rädchen

277

A.4.8 Windrad

277

A.4.9 Rotierte Dreiecke

277

A.4.10 Moderne Kunst

278

A.4.11 Schachbrett

279

A.4.12 Sinuskurve

279

A.4.13 Zahlen-Palindrom

280

A.4.14 Interaktiver Button

281

A.4.15 Ebbe und Flut berechnen

282

A.4.16 Titschender Ball

283

A.5 Funktionen

285

A.5.1 Endliches Produkt

285

A.5.2 Fakultät

285

A.5.3 Konfektionsgröße

286

A.5.4 Schaltjahr Prüfung

287

A.5.5 Literzahlen umwandeln

287

A.5.6 LKW-Maut

288

A.5.7 Analoger Uhrzeiger

289

A.5.8 Körperoberfläche

290

A.5.9 Sportwetten

291

A.5.10 GPS-Luftlinie

292

A.5.11 IBAN-Generator

293

A.5.12 Sanduhr

294

A.5.13 Der faire Würfel

295

A.5.14 Quadrat mit Kreisausschnitten

297

A.5.15 Wurfparabel

298

A.5.16 Bogenschießen-Spiel

299

A.5.17 Mondphase berechnen

303

A.5.18 Tortendiagramm

304

A.5.19 Pendelanimation

306

A.6 Arrays

308

A.6.1 Wochentag

308

A.6.2 Tankfüllung

309

A.6.3 Rückwärtsausgabe

310

A.6.4 Bildvergrößerung

311

A.6.5 Partnervermittlung

312

A.6.6 Sitzplatzreservierung

313

A.6.7 Platztausch

315

A.6.8 Bestimmung minimale Distanz

315

A.6.9 Morsecode

316

A.6.10 Endlose Animation

318

A.6.11 Spiegeln

319

A.6.12 Reflexion

320

A.6.13 Greenscreen

322

A.6.14 Bild umdrehen und invertieren

323

A.6.15 Bild mit Schatten

324

A.6.16 Bild rotieren

326

A.6.17 Bildverkleinerung

327

A.6.18 Minimale Punktdistanz

329

A.6.19 Glatte Kurven

330

A.6.20 Bildausschnitt

331

A.6.21 Bild mit Rahmen

333

A.6.22 Memory-Spielfeldgenerator

334

A.6.23 Sudoku-Check

336

A.6.24 Medianfilter

339

A.6.25 Geldautomat

340

A.6.26 Postleitzahlen visualisieren

341

A.6.27 Dreiecksfilter

342

A.7 Strings und Stringverarbeitung

345

A.7.1 String-Kompression

345

A.7.2 Split-Funktion

346

A.7.3 Geldschein-Blütencheck

347

A.7.4 Starkes Passwort

350

A.7.5 E-Mail-Check

351

A.7.6 Prüfen auf eine korrekte Klammerung

352

A.7.7 Sternchenmuster

353

A.7.8 URL-Encoding

354

A.7.9 Telefonbuch bearbeiten

356

A.7.10 Webserver-Antwort verarbeiten

358

A.7.11 IMDB-Einträge verarbeiten

360

A.7.12 Geheimsprache

361

A.7.13 Ähnlich klingende Wörter

361

A.7.14 Textrahmen

363

A.7.15 JSON-Array

364

A.7.16 Barcode-Generator

365

A.7.17 Kennzeichenverarbeitung

369

A.8 Objektorientierung

371

A.8.1 Schrittzähler

371

A.8.2 Body-Mass-Index

372

A.8.3 Songtextsuche

372

A.8.4 Passwortklasse

373

A.8.5 Kopffitness

376

A.8.6 Fernbedienung

376

A.8.7 Stoppuhr

378

A.8.8 Druckerwarteschlange

380

A.8.9 Tic Tac Toe

381

A.8.10 Zwischenablage

383

A.8.11 Temperaturgraph

385

A.8.12 Ambient Light

388

A.8.13 Verschlüsselung

390

A.8.14 Mastermind

392

A.8.15 Parteistimmen

395

A.9 Referenzdatentypen

397

A.9.1 Kreis-Klasse

397

A.9.2 Mathematischer Bruch

398

A.9.3 Highscore-Liste

399

A.9.4 Adressbuch

401

A.9.5 Digitaler Bilderrahmen

405

A.9.6 Musikalbenanwendung

407

A.9.7 Koch-Website

409

A.9.8 Hotelzimmerverwaltung

412

A.9.9 Flughafen-Check-in

414

A.9.10 Polygonzug

417

A.9.11 Twitterwall

419

A.9.12 Fototagebuch

420

A.9.13 Partygäste

423

A.9.14 Raumbelegung

425

A.10 Vererbung

430

A.10.1 Online-Shop

430

A.10.2 Gewässer

433

A.10.3 To-do-Liste

436

A.10.4 Lampen

440

A.10.5 Meeting-Protokoll

441

A.10.6 E-Book

444

A.10.7 Zoo

449

A.10.8 Audioeffekt-Player

451

A.10.9 Fahrtenbuch

454

A.10.10 Webseitengenerator

456

B Lösungen in Python

462

B.1 Download und Verwendung der elektronischen Lösungen

462

B.1.1 Download von GitHub

462

B.1.2 Öffnen der Programme

462

B.2 Einführung in die Programmierung

464

B.2.1 Three-Two-One - Mein erstes Programm

464

B.2.2 Weihnachtsbaum

464

B.2.3 Perlenkette

464

B.2.4 Die erste Zeichnung

465

B.2.5 Nachteule

465

B.2.6 Raupe Allzeitappetit

466

B.2.7 Klötzchenkunst

466

B.2.8 Ghettoblaster

467

B.2.9 Hallo Bello!

469

B.2.10 Haus

470

B.2.11 Daumen

470

B.3 Variablen, Datentypen, Operatoren und Ausdrücke

472

B.3.1 Einfache Rechenaufgaben

472

B.3.2 Perlenkette 2.0

473

B.3.3 Blutalkoholkonzentration

473

B.3.4 Stoffwechselrate

474

B.3.5 Baumstammvolumen

474

B.3.6 Körperoberfläche

474

B.3.7 RGB nach CMYK

475

B.3.8 Tic-Tac-Toe-Spielfeld

475

B.3.9 Haus mit Garage

476

B.3.10 Fußballtor

477

B.4 Kontrollstrukturen

479

B.4.1 Maximum bestimmen

479

B.4.2 Summe berechnen

479

B.4.3 Tippspiel

479

B.4.4 PIN-Code-Generator

480

B.4.5 Dominosteine

480

B.4.6 Radialer Farbverlauf

481

B.4.7 Ladevorgang-Rädchen

481

B.4.8 Windrad

482

B.4.9 Rotierte Dreiecke

482

B.4.10 Moderne Kunst

482

B.4.11 Schachbrett

483

B.4.12 Sinuskurve

484

B.4.13 Zahlen-Palindrom

485

B.4.14 Interaktiver Button

486

B.4.15 Ebbe und Flut berechnen

486

B.4.16 Titschender Ball

487

B.5 Funktionen

489

B.5.1 Endliches Produkt

489

B.5.2 Fakultät

489

B.5.3 Konfektionsgröße

490

B.5.4 Schaltjahr Prüfung

491

B.5.5 Literzahlen umwandeln

491

B.5.6 LKW-Maut

492

B.5.7 Analoger Uhrzeiger

493

B.5.8 Körperoberfläche

494

B.5.9 Sportwetten

494

B.5.10 GPS-Luftlinie

495

B.5.11 IBAN-Generator

496

B.5.12 Sanduhr

497

B.5.13 Der faire Würfel

498

B.5.14 Quadrat mit Kreisausschnitten

499

B.5.15 Wurfparabel

500

B.5.16 Bogenschießen-Spiel

501

B.5.17 Mondphase berechnen

505

B.5.18 Tortendiagramm

506

B.5.19 Pendelanimation

507

B.6 Arrays

509

B.6.1 Wochentag

509

B.6.2 Tankfüllung

510

B.6.3 Rückwärtsausgabe

511

B.6.4 Bildvergrößerung

511

B.6.5 Partnervermittlung

513

B.6.6 Sitzplatzreservierung

514

B.6.7 Platztausch

515

B.6.8 Bestimmung minimale Distanz

516

B.6.9 Morsecode

517

B.6.10 Endlose Animation

518

B.6.11 Spiegeln

519

B.6.12 Reflexion

520

B.6.13 Greenscreen

521

B.6.14 Bild umdrehen und invertieren

522

B.6.15 Bild mit Schatten

524

B.6.16 Bild rotieren

525

B.6.17 Bildverkleinerung

527

B.6.18 Minimale Punktdistanz

528

B.6.19 Glatte Kurven

529

B.6.20 Bildausschnitt

531

B.6.21 Bild mit Rahmen

532

B.6.22 Memory-Spielfeldgenerator

533

B.6.23 Sudoku-Check

535

B.6.24 Medianfilter

537

B.6.25 Geldautomat

538

B.6.26 Postleitzahlen visualisieren

539

B.6.27 Dreiecksfilter

541

B.7 Strings und Stringverarbeitung

543

B.7.1 String-Kompression

543

B.7.2 Split-Funktion

543

B.7.3 Geldschein-Blütencheck

544

B.7.4 Starkes Passwort

546

B.7.5 E-Mail-Check

547

B.7.6 Prüfen auf eine korrekte Klammerung

548

B.7.7 Sternchenmuster

549

B.7.8 URL-Encoding

550

B.7.9 Telefonbuch bearbeiten

550

B.7.10 Webserver-Antwort verarbeiten

552

B.7.11 IMDB-Einträge verarbeiten

553

B.7.12 Geheimsprache

554

B.7.13 Ähnlich klingende Wörter

555

B.7.14 Textrahmen

556

B.7.15 JSON-Array

557

B.7.16 Barcode-Generator

558

B.7.17 Kennzeichenverarbeitung

561

B.8 Objektorientierung

563

B.8.1 Schrittzähler

563

B.8.2 Body-Mass-Index

563

B.8.3 Songtextsuche

564

B.8.4 Passwortklasse

565

B.8.5 Kopffitness

567

B.8.6 Fernbedienung

568

B.8.7 Stoppuhr

569

B.8.8 Druckerwarteschlange

570

B.8.9 Tic Tac Toe

571

B.8.10 Zwischenablage

573

B.8.11 Temperaturgraph

575

B.8.12 Ambient Light

577

B.8.13 Verschlüsselung

580

B.8.14 Mastermind

583

B.8.15 Parteistimmen

585

B.9 Referenzdatentypen

587

B.9.1 Kreis-Klasse

587

B.9.2 Mathematischer Bruch

588

B.9.3 Highscore-Liste

589

B.9.4 Adressbuch

590

B.9.5 Digitaler Bilderrahmen

593

B.9.6 Musikalbenanwendung

595

B.9.7 Koch-Website

597

B.9.8 Hotelzimmerverwaltung

599

B.9.9 Flughafen-Check-in

601

B.9.10 Polygonzug

602

B.9.11 Twitterwall

604

B.9.12 Fototagebuch

605

B.9.13 Partygäste

607

B.9.14 Raumbelegung

610

B.10 Vererbung

613

B.10.1 Online-Shop

613

B.10.2 Gewässer

615

B.10.3 To-do-Liste

618

B.10.4 Lampen

620

B.10.5 Meeting-Protokoll

622

B.10.6 E-Book

624

B.10.7 Zoo

627

B.10.8 Audioeffekt-Player

630

B.10.9 Fahrtenbuch

632

B.10.10 Webseitengenerator

634

C Installation Processing

640

C.1 Einleitung

640

C.2 Windows

640

C.3 macOS

641

C.4 Linux

642

C.5 Aktivierung des Python Mode

643

D Howto: Buch-Aufgaben ohne Processing lösen

646

D.1 Java

646

D.2 Python

646

D.3 Fazit

649

 

© 2009-2024 ciando GmbH