// ====================== AUFGABE 1: NOTENRECHNER ====================== /** * Berechnet die Note basierend auf der Punktzahl * @param {number} punkte - Die erreichte Punktzahl * @returns {string} Die entsprechende Note als Text */ function berechneNote(punkte) { if (punkte >= 90) { return "sehr gut"; } else if (punkte >= 75) { return "gut"; } else if (punkte >= 60) { return "befriedigend"; } else if (punkte >= 50) { return "ausreichend"; } else { return "nicht bestanden"; } } /** * Startet den interaktiven Notenrechner * Fragt nach Punktzahl und maximaler Punktzahl */ function startNotenrechner() { // Punkte abfragen const punkteInput = prompt("Geben Sie Ihre Punktzahl ein:"); // Prüfung auf Abbruch oder leere Eingabe if (punkteInput === null || punkteInput.trim() === "") { alert("Abgebrochen."); return; } const punkte = parseFloat(punkteInput); // Validierung: Zahl if (isNaN(punkte)) { alert("Fehler: Bitte geben Sie eine gültige Zahl ein!"); return; } // Maximale Punktzahl abfragen const maxPunkteInput = prompt("Geben Sie die maximale Punktzahl ein:"); // Prüfung auf Abbruch oder leere Eingabe if (maxPunkteInput === null || maxPunkteInput.trim() === "") { alert("Abgebrochen."); return; } const maxPunkte = parseFloat(maxPunkteInput); // Validierung: Zahl if (isNaN(maxPunkte) || maxPunkte <= 0) { alert("Fehler: Bitte geben Sie eine gültige Zahl ein!"); return; } // Prozentsatz berechnen const prozentsatz = (punkte / maxPunkte) * 100; // Note berechnen (basierend auf Prozentsatz) const note = berechneNote(prozentsatz); // Ergebnis formatieren const ergebnis = `${punkte} von ${maxPunkte} Punkten (${prozentsatz.toFixed(2)}%) = ${note}`; // Ausgabe auf Konsole console.log(ergebnis); // Ausgabe als Alert alert(ergebnis); }