From 2e15c291d412bb43d113981f508f3d4f2b3e8ff0 Mon Sep 17 00:00:00 2001 From: Florian Fischer Date: Sun, 28 Apr 2024 16:44:48 +0200 Subject: add my next lesson in 10B --- Info/23_24/04/29/10B/abfrage.md | 51 +++++++++++++++++++++++++++++++++++++++++ Info/23_24/04/29/10B/slides.md | 38 ++++++++++++++++++++++++++++++ Info/23_24/04/29/10B/topic | 1 + 3 files changed, 90 insertions(+) create mode 100644 Info/23_24/04/29/10B/abfrage.md create mode 100644 Info/23_24/04/29/10B/slides.md create mode 120000 Info/23_24/04/29/10B/topic (limited to 'Info') diff --git a/Info/23_24/04/29/10B/abfrage.md b/Info/23_24/04/29/10B/abfrage.md new file mode 100644 index 00000000..475ba869 --- /dev/null +++ b/Info/23_24/04/29/10B/abfrage.md @@ -0,0 +1,51 @@ +--- +lang: de +--- + +## Wiederholung + +* Beschreibe [knapp]{.underline}, wie in einem **EVA**-Loop periodische Ereignisse umgesetzt werden können. +* Begründe, mit welcher Datenstruktur du den beliebig lange Körper der Schlange, in einem Snake-Spiel umsetzten würdest. + +## Wiederholung - Vervollständige die Methode `wachsen` + +```{.java} +public void wachsen(int x, int y) { + Rechteck kopf = new Rechteck(); + kopf.PositionSetzen( ); + // Erzeuge einen neuen größeren Körper + + // Speichere den Kopf an der ersten Stelle im neuen Körper + + // Speichere alle alten Körperteile im neuen Koerper + for( ) { + + } + // Speichere den neuen Körper anstelle des Alten + +} +``` + +## Lösung + +* Durch Mitzählen, wie oft der **Verarbeitugs**-Schritt ausgeführt wurde und der **Modulo**-Funktion. +* Da wir um Ecken laufen müssen brauchen wir mehrere Rechtecke $\rightarrow$ mit einem Feld. + +## Lösung + +```{.java} +public void wachsen(int x, int y) { + Rechteck kopf = new Rechteck(); + kopf.PositionSetzen(x, y); + // Erzeuge einen neuen größeren Körper + Rechteck[] neuerKoerper = new Rechteck[koerper.length + 1]; + // Speichere den Kopf an der ersten Stelle im neuen Körper + neuerKoerper[0] = kopf; + // Speichere alle alten Körperteile im neuen Koerper + for(int i = 0; i < koerper.length; i++) { + neuerKoerper[i+1] = koerper[i]; + } + // Speichere den neuen Körper anstelle des Alten + koerper = neuerKoerper; +} +``` diff --git a/Info/23_24/04/29/10B/slides.md b/Info/23_24/04/29/10B/slides.md new file mode 100644 index 00000000..6ecc37da --- /dev/null +++ b/Info/23_24/04/29/10B/slides.md @@ -0,0 +1,38 @@ +--- +author: Florian Fischer +theme: metropolis +aspectratio: 169 +header-includes: | + \makeatletter + \beamer@ignorenonframefalse + \makeatother +--- + +## Organisatorisches + +* Termin 2. Kurzarbeit: **14.05** +* Stoff: + * Felder + * EVA-Loop + * Interfaces + * Polymorphismus (*nächste Woche*) + * Java Grundlagen + +```{.include} +abfrage.md +``` + +## Fehler-Sammlung + +Interaktives Textdokument unter: + +[https://0173.drive.bycs.de/s/XGeqenxibFNuJes](https://0173.drive.bycs.de/s/XGeqenxibFNuJes) + +(auch auf Mebis verlinkt) + +Ergänzungen fließen gerne positiv in die Unterrichtsbeiträge mit ein. \faIcon{arrow-up} + +## Heute + +* Letzter Rest von: **arbeitsauftrag1.pdf** +* **arbeitsauftrag2.pdf** diff --git a/Info/23_24/04/29/10B/topic b/Info/23_24/04/29/10B/topic new file mode 120000 index 00000000..a7c8aab4 --- /dev/null +++ b/Info/23_24/04/29/10B/topic @@ -0,0 +1 @@ +../../../../10/2/Snake/ \ No newline at end of file -- cgit v1.2.3