43 lines
1 KiB
JavaScript
43 lines
1 KiB
JavaScript
// ===============================
|
|
// NOTENRECHNER
|
|
// ===============================
|
|
|
|
window.berechneNote = function (punkte) {
|
|
if (punkte >= 90) return "sehr gut";
|
|
if (punkte >= 75) return "gut";
|
|
if (punkte >= 60) return "befriedigend";
|
|
if (punkte >= 50) return "ausreichend";
|
|
return "nicht bestanden";
|
|
};
|
|
|
|
function leseZahl(text) {
|
|
const eingabe = prompt(text);
|
|
|
|
if (eingabe === null || eingabe.trim() === "") return NaN;
|
|
|
|
return Number(eingabe.trim().replace(",", "."));
|
|
}
|
|
|
|
window.startNotenrechner = function () {
|
|
const punkte = leseZahl("Wie viele Punkte hast du erreicht?");
|
|
const max = leseZahl("Maximale Punktzahl?");
|
|
|
|
if (
|
|
Number.isNaN(punkte) ||
|
|
Number.isNaN(max) ||
|
|
max <= 0 ||
|
|
punkte < 0 ||
|
|
punkte > max
|
|
) {
|
|
alert("Bitte gültige Werte eingeben!");
|
|
return;
|
|
}
|
|
|
|
const prozent = (punkte / max) * 100;
|
|
const note = window.berechneNote(prozent);
|
|
|
|
const text = `${punkte} von ${max} Punkten (${prozent.toFixed(1)}%) = ${note}`;
|
|
|
|
console.log(text);
|
|
alert(text);
|
|
};
|