js实现大乐透
实现大乐透的基本逻辑
大乐透是一种彩票游戏,需要随机生成一组数字。通常规则是从前区(1-35)选择5个不重复的数字,从后区(1-12)选择2个不重复的数字。

生成随机数函数
function getRandomNumbers(min, max, count) {
const numbers = [];
while (numbers.length < count) {
const num = Math.floor(Math.random() * (max - min + 1)) + min;
if (!numbers.includes(num)) {
numbers.push(num);
}
}
return numbers.sort((a, b) => a - b);
}
生成大乐透号码
function generateDLT() {
const frontArea = getRandomNumbers(1, 35, 5);
const backArea = getRandomNumbers(1, 12, 2);
return {
frontArea: frontArea,
backArea: backArea
};
}
输出格式化结果
function formatDLT(dlt) {
return `前区: ${dlt.frontArea.join(' ')} 后区: ${dlt.backArea.join(' ')}`;
}
const myDLT = generateDLT();
console.log(formatDLT(myDLT));
完整代码示例
function getRandomNumbers(min, max, count) {
const numbers = [];
while (numbers.length < count) {
const num = Math.floor(Math.random() * (max - min + 1)) + min;
if (!numbers.includes(num)) {
numbers.push(num);
}
}
return numbers.sort((a, b) => a - b);
}
function generateDLT() {
const frontArea = getRandomNumbers(1, 35, 5);
const backArea = getRandomNumbers(1, 12, 2);
return {
frontArea: frontArea,
backArea: backArea
};
}
function formatDLT(dlt) {
return `前区: ${dlt.frontArea.join(' ')} 后区: ${dlt.backArea.join(' ')}`;
}
// 生成5注大乐透
for (let i = 0; i < 5; i++) {
console.log(`第${i + 1}注: ${formatDLT(generateDLT())}`);
}
注意事项
生成的随机数可能重复,代码中已包含去重逻辑 排序功能确保数字从小到大排列 可以根据需要调整生成的注数 前区和后区的数字范围符合大乐透规则






