From 5e5bf95b84a1a1a0c8128d17598dd2ff536a077a Mon Sep 17 00:00:00 2001 From: Philippe Torrel Date: Thu, 24 Sep 2026 14:40:26 +0200 Subject: [PATCH] --- .../data/file01.txt | 1 + .../data/file02.txt | 1 + .../data/file03.txt | 1 + .../data/file04.txt | 1 + .../data/file05.txt | 1 + .../data/file06.txt | 1 + .../u12_mehrere-dateien-auslesen/index.js | 12 ++ .../u12_mehrere-dateien-auslesen/package.json | 13 ++ 02_advanced/uebungen/u13_dns-lookup/index.js | 77 ++++++++++ .../uebungen/u13_dns-lookup/package.json | 16 ++ .../uebungen/u14_avg-scores/index.html | 49 +++++++ .../uebungen/u15_shopping-list/index.html | 38 +++++ 02_advanced/uebungen/u16_geoquiz/index.html | 42 ++++++ .../u17_inventory-modification/index.html | 69 +++++++++ .../u18_3d-array-selection/index.html | 66 +++++++++ .../u19_brightness-increase/index.html | 64 ++++++++ .../{uebungen-1-10.zip => uebungen-01-10.zip} | Bin ...eak.zip => uebungen-11_pyramide-break.zip} | Bin 02_advanced/uebungen/uebungen-12-19.zip | Bin 0 -> 11731 bytes .../unterricht/tag14/06_chess-move/index.html | 66 ++++++++- .../tag14/07_chess-moves/index.html | 113 +++++++++++++++ .../tag14/08_get-moves-history-ar/index.html | 29 ++++ .../tag14/09_chess-final/index.html | 137 ++++++++++++++++++ 23 files changed, 793 insertions(+), 4 deletions(-) create mode 100644 02_advanced/uebungen/u12_mehrere-dateien-auslesen/data/file01.txt create mode 100644 02_advanced/uebungen/u12_mehrere-dateien-auslesen/data/file02.txt create mode 100644 02_advanced/uebungen/u12_mehrere-dateien-auslesen/data/file03.txt create mode 100644 02_advanced/uebungen/u12_mehrere-dateien-auslesen/data/file04.txt create mode 100644 02_advanced/uebungen/u12_mehrere-dateien-auslesen/data/file05.txt create mode 100644 02_advanced/uebungen/u12_mehrere-dateien-auslesen/data/file06.txt create mode 100644 02_advanced/uebungen/u12_mehrere-dateien-auslesen/index.js create mode 100644 02_advanced/uebungen/u12_mehrere-dateien-auslesen/package.json create mode 100644 02_advanced/uebungen/u13_dns-lookup/index.js create mode 100644 02_advanced/uebungen/u13_dns-lookup/package.json create mode 100644 02_advanced/uebungen/u14_avg-scores/index.html create mode 100644 02_advanced/uebungen/u15_shopping-list/index.html create mode 100644 02_advanced/uebungen/u16_geoquiz/index.html create mode 100644 02_advanced/uebungen/u17_inventory-modification/index.html create mode 100644 02_advanced/uebungen/u18_3d-array-selection/index.html create mode 100644 02_advanced/uebungen/u19_brightness-increase/index.html rename 02_advanced/uebungen/{uebungen-1-10.zip => uebungen-01-10.zip} (100%) rename 02_advanced/uebungen/{u11_pyramide-break.zip => uebungen-11_pyramide-break.zip} (100%) create mode 100644 02_advanced/uebungen/uebungen-12-19.zip create mode 100644 02_advanced/unterricht/tag14/07_chess-moves/index.html create mode 100644 02_advanced/unterricht/tag14/08_get-moves-history-ar/index.html create mode 100644 02_advanced/unterricht/tag14/09_chess-final/index.html diff --git a/02_advanced/uebungen/u12_mehrere-dateien-auslesen/data/file01.txt b/02_advanced/uebungen/u12_mehrere-dateien-auslesen/data/file01.txt new file mode 100644 index 0000000..e6c377d --- /dev/null +++ b/02_advanced/uebungen/u12_mehrere-dateien-auslesen/data/file01.txt @@ -0,0 +1 @@ +Ich bin file 01 \ No newline at end of file diff --git a/02_advanced/uebungen/u12_mehrere-dateien-auslesen/data/file02.txt b/02_advanced/uebungen/u12_mehrere-dateien-auslesen/data/file02.txt new file mode 100644 index 0000000..68d1965 --- /dev/null +++ b/02_advanced/uebungen/u12_mehrere-dateien-auslesen/data/file02.txt @@ -0,0 +1 @@ +Ich bin file 02 \ No newline at end of file diff --git a/02_advanced/uebungen/u12_mehrere-dateien-auslesen/data/file03.txt b/02_advanced/uebungen/u12_mehrere-dateien-auslesen/data/file03.txt new file mode 100644 index 0000000..47225cc --- /dev/null +++ b/02_advanced/uebungen/u12_mehrere-dateien-auslesen/data/file03.txt @@ -0,0 +1 @@ +Ich bin file 03 \ No newline at end of file diff --git a/02_advanced/uebungen/u12_mehrere-dateien-auslesen/data/file04.txt b/02_advanced/uebungen/u12_mehrere-dateien-auslesen/data/file04.txt new file mode 100644 index 0000000..e33d153 --- /dev/null +++ b/02_advanced/uebungen/u12_mehrere-dateien-auslesen/data/file04.txt @@ -0,0 +1 @@ +Ich bin file 04 \ No newline at end of file diff --git a/02_advanced/uebungen/u12_mehrere-dateien-auslesen/data/file05.txt b/02_advanced/uebungen/u12_mehrere-dateien-auslesen/data/file05.txt new file mode 100644 index 0000000..ad9f9c3 --- /dev/null +++ b/02_advanced/uebungen/u12_mehrere-dateien-auslesen/data/file05.txt @@ -0,0 +1 @@ +Ich bin file 05 \ No newline at end of file diff --git a/02_advanced/uebungen/u12_mehrere-dateien-auslesen/data/file06.txt b/02_advanced/uebungen/u12_mehrere-dateien-auslesen/data/file06.txt new file mode 100644 index 0000000..e1d09b7 --- /dev/null +++ b/02_advanced/uebungen/u12_mehrere-dateien-auslesen/data/file06.txt @@ -0,0 +1 @@ +Ich bin file 06 \ No newline at end of file diff --git a/02_advanced/uebungen/u12_mehrere-dateien-auslesen/index.js b/02_advanced/uebungen/u12_mehrere-dateien-auslesen/index.js new file mode 100644 index 0000000..b0a0365 --- /dev/null +++ b/02_advanced/uebungen/u12_mehrere-dateien-auslesen/index.js @@ -0,0 +1,12 @@ +// const getFileBy = (path, encoding = 'utf-8') => { + +// }; + +/* + +Übung 12: Sechs Dateien einlesen +Erstelle die Dateien file_1.txt … file_6.txt und lies sie, wie soeben beschrieben, mit getFileContent(…) aus Codebeispiel 124 ein. + +Was passiert, wenn eine Datei fehlt? Überprüfe die Fehlerbehandlung. Erweitere die Fehlermeldung so, dass ausgegeben wird, welche Dateien nicht gelesen werden konnten! + +*/ diff --git a/02_advanced/uebungen/u12_mehrere-dateien-auslesen/package.json b/02_advanced/uebungen/u12_mehrere-dateien-auslesen/package.json new file mode 100644 index 0000000..5a98782 --- /dev/null +++ b/02_advanced/uebungen/u12_mehrere-dateien-auslesen/package.json @@ -0,0 +1,13 @@ +{ + "name": "u12_mehrere-dateien-auslesen", + "version": "1.0.0", + "description": "", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "keywords": [], + "author": "", + "license": "ISC", + "type": "module" +} diff --git a/02_advanced/uebungen/u13_dns-lookup/index.js b/02_advanced/uebungen/u13_dns-lookup/index.js new file mode 100644 index 0000000..76bb75d --- /dev/null +++ b/02_advanced/uebungen/u13_dns-lookup/index.js @@ -0,0 +1,77 @@ +// TODO: imports + +const IP_V = 4; // we use IP protocol version 4 +const URL = 'google.de'; + +// TODO: your modifications + +// 1. +// const getIpBy = () => {}; + +// 2. +// Promises Unterobjekt von Node +// const getPromisesIpBy = () => {}; + +// 3. +// Promisify Helferfunktion +// const getPromisifyIpBy = + +// 4. +// Async await +// const getAsyncIpBy = + +// Test Cases: +// ============================= +getIpBy(URL, IP_V) + .then((data) => { + console.log(data); + }) + .catch((err) => { + console.log(color.red(err)); + }); + +getPromisesIpBy(URL) + .then((data) => { + console.log(data); + }) + .catch((err) => { + console.log(color.red(err)); + }); + +getPromisifyIpBy(URL, IP_V) + .then((data) => { + console.log(data); + }) + .catch((err) => { + console.log(color.red(err)); + }); + +getAsyncIpBy(URL, IP_V) + .then((data) => { + console.log(data); + }) + .catch((err) => { + console.log(color.red(err)); + }); + +/* Übung 13: Das Telefonbuch des Internets + +Vielleicht hast du einmal die Webseite www.nodejs.com besucht? Dann hat dein Computer die so genannte IP-Adresse des Servers www.nodejs.com herausgefunden. + +Ähnlich wie ein Telefonbuch ordnet das Domain Name System (DNS) jedem Server (Host) eine eindeutige IP-Adresse zu, unter der er über das Internet erreichbar ist. + +Die Node.js-API bietet eine Funktion, um Namen im DNS nachzuschlagen: dns.lookup(…). + +Die Übung besteht nun darin, obiges Beispiel so umzuschreiben, dass der Aufruf von dns.lookup(…) in eine Wrapper-Funkion verpackt wird. + +Es sollen drei verschiedene Lösungen erstellt werden: + +1. Ausführliche Variante mit eigenem Promise-Objekt als Ummantelung + +2. Kurze Variante mit Promises-Unterobjekt (dns.promises) + +3. Promisify-Variante mit util.promisify(…) + +4. Async await Variante + +*/ diff --git a/02_advanced/uebungen/u13_dns-lookup/package.json b/02_advanced/uebungen/u13_dns-lookup/package.json new file mode 100644 index 0000000..5a5d84a --- /dev/null +++ b/02_advanced/uebungen/u13_dns-lookup/package.json @@ -0,0 +1,16 @@ +{ + "name": "u13_dns-lookup", + "version": "1.0.0", + "description": "", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "keywords": [], + "author": "", + "license": "ISC", + "type": "module", + "dependencies": { + "chalk": "^6.0.0" + } +} diff --git a/02_advanced/uebungen/u14_avg-scores/index.html b/02_advanced/uebungen/u14_avg-scores/index.html new file mode 100644 index 0000000..db9e9c2 --- /dev/null +++ b/02_advanced/uebungen/u14_avg-scores/index.html @@ -0,0 +1,49 @@ + + + + + + Übung 14: Durchschnittsnoten berechnen + + + +
+
+
+

Übung 14: Durchschnittsnoten berechnen

+

+ Gegeben ist eine Tabelle (gradesTable) mit Noten verschiedener Schüler in unterschiedlichen Fächern. Deine + Aufgabe ist es, zwei Funktionen zu schreiben, um die Daten auszuwerten. +

+
    +
  1. + Durchschnitt pro Schüler (calculateAvgGrades): Schreibe eine Funktion, die die + Durchschnittsnote jedes Schülers (zeilenweise) berechnet. Das Ergebnis soll ein Array mit den + Durchschnittswerten der Schüler (Anna, Ben, Clara, David) sein. +
  2. +
  3. + Durchschnitt pro Fach (calculateAvgSubjects): Schreibe eine Funktion, die die + Durchschnittsnote jedes Fachs (spaltenweise) berechnet. Das Ergebnis soll ein Array mit den + Durchschnittswerten der Fächer (Mathematics, English, Biology, History) sein. +
  4. +
+

+ Hinweis: Die erste Zeile der Tabelle enthält Überschriften, und die erste Spalte enthält + Namen. Diese müssen bei der Berechnung ignoriert werden. Runde alle Ergebnisse auf zwei Dezimalstellen. +

+
+
+
+ + + diff --git a/02_advanced/uebungen/u15_shopping-list/index.html b/02_advanced/uebungen/u15_shopping-list/index.html new file mode 100644 index 0000000..9888d2f --- /dev/null +++ b/02_advanced/uebungen/u15_shopping-list/index.html @@ -0,0 +1,38 @@ + + + + + + Übung 15: Einkaufsliste bearbeiten + + + +
+
+
+

Übung 15: Einkaufsliste bearbeiten

+

+ Erstelle eine Einkaufsliste als zweidimensionales Array mit Kategorien und Artikeln. Führe folgende + Änderungen durch: +

+ +
    +
  1. Entferne das zweite Element aus jeder Kategorie.
  2. +
  3. Füge jeweils ein neues Element hinzu.
  4. +
+
+
+
+ + + diff --git a/02_advanced/uebungen/u16_geoquiz/index.html b/02_advanced/uebungen/u16_geoquiz/index.html new file mode 100644 index 0000000..0f72453 --- /dev/null +++ b/02_advanced/uebungen/u16_geoquiz/index.html @@ -0,0 +1,42 @@ + + + + + + Übung 16: Geoquiz + + + +
+
+
+

Übung 16: Geoquiz

+

+ Eine Schule gibt die Entwicklung eines Geoquiz in Auftrag, bei dem Schüler die Hauptstädte verschiedener + Staaten nennen müssen. Deine Aufgabe besteht in der Entwicklung der Lösungsfunktion + getCapitalOf, die eine Hauptstadt zum übergebenen Staat (country) zurückliefert. +

+ +
    +
  1. Entferne das zweite Element aus jeder Kategorie.
  2. +
  3. Füge jeweils ein neues Element hinzu.
  4. +
+
+
+
+ + + diff --git a/02_advanced/uebungen/u17_inventory-modification/index.html b/02_advanced/uebungen/u17_inventory-modification/index.html new file mode 100644 index 0000000..b1db331 --- /dev/null +++ b/02_advanced/uebungen/u17_inventory-modification/index.html @@ -0,0 +1,69 @@ + + + + + + Übung 17: Lagerbestand erweitern + + + +
+
+
+

Übung 17: Lagerbestand erweitern

+

+ Füge eine neue Kategorie «Books» zu dem bestehenden dreidimensionalen Lagerbestandssystem + hinzu und trage zwei neue Produkte mit deren Lagerorten und Mengen ein. +

+
+
+
+ + + diff --git a/02_advanced/uebungen/u18_3d-array-selection/index.html b/02_advanced/uebungen/u18_3d-array-selection/index.html new file mode 100644 index 0000000..a655911 --- /dev/null +++ b/02_advanced/uebungen/u18_3d-array-selection/index.html @@ -0,0 +1,66 @@ + + + + + + Übung 18: 3D Array Zugriff + + + +
+
+
+

Übung 18: 3D Array Zugriff

+

+ Greife auf das zweite Produkt in der «Clothing»-Kategorie zu und ändere die Menge von + «Jeans» von 30 auf 25. +

+
+
+
+ + + diff --git a/02_advanced/uebungen/u19_brightness-increase/index.html b/02_advanced/uebungen/u19_brightness-increase/index.html new file mode 100644 index 0000000..0160b3f --- /dev/null +++ b/02_advanced/uebungen/u19_brightness-increase/index.html @@ -0,0 +1,64 @@ + + + + + + Übung 19: Bildbearbeitung – Helligkeit erhöhen + + + +
+
+
+

Übung 19: Bildbearbeitung – Helligkeit erhöhen

+

+ Schreibe eine Funktion increaseBrightness, die die Helligkeit aller Pixel in einem 3D Bildarray + um einen bestimmten Wert erhöht. Stelle sicher, dass die RGB-Werte nicht über 255 hinausgehen. +

+

+ Die Funktion nimmt ein dreidimensionales Array image und einen Wert value als + Parameter. Ziel ist es, die Helligkeit jedes Pixels im Bild zu erhöhen, indem jeder RGB-Wert um + value erhöht wird. Stelle dabe sicher, dass kein RGB-Wert den maximalen Wert von + 255 überschreitet. +

+
+
+
+ + + diff --git a/02_advanced/uebungen/uebungen-1-10.zip b/02_advanced/uebungen/uebungen-01-10.zip similarity index 100% rename from 02_advanced/uebungen/uebungen-1-10.zip rename to 02_advanced/uebungen/uebungen-01-10.zip diff --git a/02_advanced/uebungen/u11_pyramide-break.zip b/02_advanced/uebungen/uebungen-11_pyramide-break.zip similarity index 100% rename from 02_advanced/uebungen/u11_pyramide-break.zip rename to 02_advanced/uebungen/uebungen-11_pyramide-break.zip diff --git a/02_advanced/uebungen/uebungen-12-19.zip b/02_advanced/uebungen/uebungen-12-19.zip new file mode 100644 index 0000000000000000000000000000000000000000..1a732b17939a260ce49277fd8581542b53b0549c GIT binary patch literal 11731 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 literal 0 HcmV?d00001 diff --git a/02_advanced/unterricht/tag14/06_chess-move/index.html b/02_advanced/unterricht/tag14/06_chess-move/index.html index 0db0f90..d2b346d 100644 --- a/02_advanced/unterricht/tag14/06_chess-move/index.html +++ b/02_advanced/unterricht/tag14/06_chess-move/index.html @@ -5,17 +5,31 @@ Chess Vorlage +

Chess Vorlage

+
diff --git a/02_advanced/unterricht/tag14/07_chess-moves/index.html b/02_advanced/unterricht/tag14/07_chess-moves/index.html new file mode 100644 index 0000000..33b6309 --- /dev/null +++ b/02_advanced/unterricht/tag14/07_chess-moves/index.html @@ -0,0 +1,113 @@ + + + + + + Chess Vorlage + + + + +
+
+

Chess Vorlage

+
+
+
+ + + diff --git a/02_advanced/unterricht/tag14/08_get-moves-history-ar/index.html b/02_advanced/unterricht/tag14/08_get-moves-history-ar/index.html new file mode 100644 index 0000000..7c2e2ea --- /dev/null +++ b/02_advanced/unterricht/tag14/08_get-moves-history-ar/index.html @@ -0,0 +1,29 @@ + + + + + + History Values in einem Array definieren + + + +
+
+

History Values in einem Array definieren

+

Alle vergangenen Schachzüge in einer Array Position vorliegen

+
+
+ + + diff --git a/02_advanced/unterricht/tag14/09_chess-final/index.html b/02_advanced/unterricht/tag14/09_chess-final/index.html new file mode 100644 index 0000000..3499ce1 --- /dev/null +++ b/02_advanced/unterricht/tag14/09_chess-final/index.html @@ -0,0 +1,137 @@ + + + + + + Chess Vorlage + + + + +
+
+

Chess Vorlage

+
+
+
+ + +