11522 sujets

JavaScript, DOM et API Web HTML5

Bonjour,
j'ai écris en javascript une fonction qui permet d'entrer 20 chiffres et déterminer le plus grand, en utilisant un tableau qui s'alimente avec les 20 saisies. jusque là tout va bien.
Par contre je n'arrive pas à déterminer l'index de ce nombre stocké dans ma variable nbrG.
Pouvez-vous m'aider ? merci par avance.

unction Exo_5_8() {
var tab = [];
var nbrG;
var pos;

for (var i = 0; i < 20; i++) {

var N = prompt('Entrez un nombre : ')
tab.push(N);
console.log(tab)
nbrG = parseInt( Math.max.apply(Math, tab) );
console.log(nbrG)

}
pos = tab.indexOf(nbrG);
document.getElementById("div_resultat_js").innerHTML = "Le nombre le plus grand est : " + nbrG + "<br/>" + "La position de saisie du nombre est : " + pos;

}
Salut

Ce code de débutant présente de nombreuses erreurs, il mérite d'être corrigé !

À vous d'apprendre les instructions qui vous sont inconnues. Exemples :

Number

isNaN()

Syntaxe de décomposition

Littéraux de gabarits

let
    tab = [],
    nbrG,
    pos,
    str,
    N;

for (let i = 0; i < 20; i++) {

    while (true) {
        str = prompt('Entrez un nombre : ');
        N = Number(str);

        if (!isNaN(N)) {
            tab.push(N);
            break;
        } else {
            alert(`Vous avez entré : ${str} ! Ce n'est pas un nombre !`)
        }
    }
}

console.log(tab);

nbrG = Math.max(...tab);

console.log(nbrG, typeof nbrG);

pos = tab.indexOf(nbrG);

console.log(`Le nombre le plus grand est : ${nbrG} + \n + "La position de saisie du nombre est : ${pos}`);