JavaScript 双色球随机号码生成器 (红球不重复)
JavaScript 双色球随机号码生成器 (红球不重复)
本文将使用 JavaScript 代码实现一个双色球随机号码生成器,满足红球范围 1-33 不重复,蓝球范围 1-16 的规则。
思路:
- 每次产生一个随机球,存入数组中。
- 下一次产生的随机球,要和数组中的进行比较,如果有相等的,则重新产生一个号 (循环变量要减 1),反之继续存入数组。
- 直到产生 6 个球。
- 蓝球单独产生。
- 最后输出所有球。
代码:
// 生成红球
let redBalls = [];
while (redBalls.length < 6) {
let ball = Math.floor(Math.random() * 33) + 1;
if (!redBalls.includes(ball)) {
redBalls.push(ball);
}
}
// 生成蓝球
let blueBall = Math.floor(Math.random() * 16) + 1;
// 输出结果
console.log('红球:' + redBalls.join(' '));
console.log('蓝球:' + blueBall);
代码解释:
- 使用
while循环来生成 6 个红球。 - 每次生成一个随机球后,通过
includes()方法判断是否已经存在于数组中。 - 如果不存在,则将其加入数组中。
- 如果存在,则继续生成下一个随机球,同时循环变量
redBalls.length不增加,保证继续生成直到满足 6 个红球的条件。 - 蓝球则直接使用
Math.random()生成一个 1 到 16 之间的随机数。 - 最后使用
console.log()输出结果。
示例:
运行这段代码,你将得到类似以下的输出结果:
红球:12 25 1 18 32 8
蓝球:11
希望这篇文章对您有所帮助!
原文地址: https://www.cveoy.top/t/topic/mcUp 著作权归作者所有。请勿转载和采集!