////////////////////////////////////////////////////////
// Aufgabe 1: Lambda Syntax
////////////////////////////////////////////////////////
// Transformiere die folgenden Funktionen in Lambda-Schreibweise
// TODO: ersetze undefined mit der Lambda-Funktion
let printLambda = undefined;
function add(value1, value2) {
// TODO: ersetze undefined mit der Lambda-Funktion
let addLambda = undefined;
function addAndPrint(value1, value2) {
print(add(value1, value2));
// TODO: ersetze undefined mit der Lambda-Funktion
let addAndPrintLambda = undefined;
////////////////////////////////////////////////////////
// Aufgabe 2: Map, Filter, Reduce (easy)
////////////////////////////////////////////////////////
// Du bekommst ein Array mit Bestellungen eines Onlineshops.
// Jede Bestellung ist ein Objekt mit Informationen
// über den Käufer und den Gesamtpreis der Bestellung.
// Verwende für die Lösung der Aufgabe die Array-Methoden map, filter und reduce.
// Verwende die Lambda-Syntax.
{ kunde: "Anna", betrag: 120 },
{ kunde: "Bernd", betrag: 75 },
{ kunde: "Clara", betrag: 230 },
{ kunde: "Dieter", betrag: 40 },
{ kunde: "Eva", betrag: 180 },
// Filtere alle Bestellungen heraus, bei denen der Betrag über 100 Euro liegt.
// Ermittle von diesen Bestellungen nur den Namen der Kunden.
// kunden = bestellungen. ...
let erwarteteKunden = ["Anna", "Clara", "Eva"];
// Berechne die Gesamtsumme der Bestellungen
// summe = bestellungen. ...
let erwarteteSumme = 645;
////////////////////////////////////////////////////////
// Aufgabe 3: Map, Filter, Reduce (advanced)
////////////////////////////////////////////////////////
// Du erhältst ein Array mit Benutzerprofilen einer digitalen Bibliothek.
// Jeder Benutzer hat ein Array gelesener Bücher,
// und jedes Buch ist ein Objekt mit folgenden Eigenschaften:
// titel: der Titel des Buches (String)
// autor: der Name des Autors (String)
// bewertung: eine Bewertung des Benutzers (Zahl von 1 bis 5)
{ titel: "Der Hobbit", autor: "J.R.R. Tolkien", bewertung: 5 },
{ titel: "1984", autor: "George Orwell", bewertung: 4 },
{ titel: "1984", autor: "George Orwell", bewertung: 5 },
{ titel: "Der Marsianer", autor: "Andy Weir", bewertung: 4 },
{ titel: "Der Hobbit", autor: "J.R.R. Tolkien", bewertung: 4 },
{ titel: "Der Report der Magd", autor: "Margaret Atwood", bewertung: 3 },
// Extrahiere alle Bücher, die von mindestens einem Benutzer
// mit mindestens 4 Sternen bewertet wurden.
// Entferne Duplikate: Ein Buch gilt als Duplikat, wenn Titel und Autor identisch sind.
// Erstelle ein neues Array, das nur aus den Titeln dieser Bücher besteht.
// Gib zusätzlich die durchschnittliche Bewertung jedes dieser Bücher
// (über alle Bewertungen hinweg) aus, sortiert nach Titel.
// Hinweise zur Umsetzung:
// Nutze filter, reduce und map — gerne auch verschachtelt.
// Duplikate sollen über reduce entfernt werden,
// indem geprüft wird, ob ein Buch mit gleichem Titel und Autor bereits enthalten ist.
// Die Durchschnittsbewertung soll aus allen Bewertungen
// des Buches berechnet werden (auch wenn einige < 4 Sterne waren).
// Hinweis: Die Aufgabe wird etwas leichter, wenn du dir in einem ersten Schritt
// mit der reduce-Methode alle Bücher in ein Array speicherst.
{ titel: "Der Hobbit", durchschnitt: 4.5 },
{ titel: "1984", durchschnitt: 4.5 },
{ titel: "Der Marsianer", durchschnitt: 4 },