Sélectionnez 5 nombres aléatoires divisibles par 2 entre 1 et 30, triez-les du plus grand au plus petit (tri à bulles) et affichez enfin un tableau.

Tout d'abord, clarifions l'idée de cette question :
(1) La plage est comprise entre 1 et 30, et 5 nombres aléatoires Math.round et Math.random doivent en être sélectionnés

(2) Ces cinq nombres doivent être divisibles par 2

(3) Parce qu'il y a 5 nombres à sortir et que les nombres aléatoires de sortie ne remplissent pas nécessairement les conditions, le nombre de fois que nous bouclons doit être plus grand pour garantir que nous produisons 5 nombres divisibles par 2

(4) Le tableau de sortie forme un tableau, définissez d'abord un tableau vide, après une boucle, ajoutez le tableau qualifié au tableau vide, puis sortez de la boucle lorsque la longueur du tableau est égale à 5

(5) Enfin, utilisez le tri à bulles pour obtenir le nouveau tableau

code afficher comme ci-dessous:

<body>
    <script>
        var arr = [];
        for (var i = 0; i <= 20; i++) {
            var num = Math.round(Math.random() * 30 + 1);
            if (num % 2 == 0) {
                arr.push(num);
            }
            if (arr.length == 5) {
                break;
            }
        }

        for (var j = 0; j < arr.length - 1; j++) {
            for (var k = j; k < arr.length - j - 1; k++) {
                if (arr[k] < arr[k + 1]) {
                    var max = arr[k];
                    arr[k] = arr[k + 1];
                    arr[k + 1] = max;
                }
            }
        }
        console.log(arr);
    </script>
</body>

Supongo que te gusta

Origin blog.csdn.net/DIUDIUjiang/article/details/125967879
Recomendado
Clasificación