Somme des nombres saisis
importance: 4
Ãcrivez la fonction sumInput() qui :
- Demande à lâutilisateur des valeurs utilisant
promptet stocke les valeurs dans le tableau. - Finit de demander lorsque lâutilisateur entre une valeur non numérique, une chaîne vide ou appuie sur âAnnulerâ.
- Calcule et retourne la somme des éléments du tableau.
P.S. Un zéro 0 est un nombre valide, donc sâil vous plaît nâarrêtez pas lâentrée sur zéro.
Veuillez noter le détail subtile mais important de la solution. Nous ne convertissons pas instantanément value en nombre après le prompt, parce quâaprès value = +value nous ne pourrions pas distinguer une chaîne vide (signe dâarrêt) du zéro (nombre valide). Nous le faisons plus tard à la place.
function sumInput() {
let numbers = [];
while (true) {
let value = prompt("A number please?", 0);
// devrions-nous annuler ?
if (value === "" || value === null || !isFinite(value)) break;
numbers.push(+value);
}
let sum = 0;
for (let number of numbers) {
sum += number;
}
return sum;
}
alert( sumInput() );