首先,我们来理清一下这道题的思路:
(1)范围是1-30,且要在里面选出5个随机数 Math.round 、Math.random
(2)这五个数要能被2整除
(3)因为要输出5个数,而输出的随机数不一定满足条件,所以我们循环的次数必须要大一点,才能保证我们输出的5个能被2整除的数
(4)输出的数组成一个数组,先定义一个空数组,循环遍历后,把符合条件的数组添加到空数组里面,然后当数组长度等于5时跳出循环
(5)最后把得到的新数组,用冒泡排序就好啦
代码如下:
<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>