Opsummer indtastede tal
vigtighed: 4
Skriv en funktion sumInput() som:
- Spørger brugeren om værdier med
promptog gemmer værdierne i et array. - Stopper med at spørge, når brugeren indtaster en ikke-numerisk værdi, en tom streng eller trykker “Annuller”.
- Beregner og returnerer summen af arrayets elementer.
P.S. Et nul 0 er et gyldigt tal, så stop ikke inputtet ved nul.
Bemærk den subtile, men vigtige detalje i løsningen. Vi konverterer ikke value til et tal med det samme efter prompt, fordi efter value = +value ville vi ikke kunne skelne en tom streng (stoptegn) fra nul (gyldigt tal). Vi gør det senere i stedet.
function sumInput() {
let numbers = [];
while (true) {
let value = prompt("Indtast et tal?", 0);
// skal vi afbryde?
if (value === "" || value === null || !isFinite(value)) break;
numbers.push(+value);
}
let sum = 0;
for (let number of numbers) {
sum += number;
}
return sum;
}
alert( sumInput() );