JS 数字游戏、简易双色球
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
/*
note:
Math.ceil(); //向上取整。
Math.floor(); //向下取整。
Math.round(); //四舍五入。
Math.random(); //0.0 ~ 1.0 之间的一个伪随机数。【包含0不包含1】 //比如0.8647578968666494
parseInt(); //向下取整
22-55之间的随机数
随机数*(大数-小数)+小数
Math.pow(底数, 幂)
Math.abs() //绝对值
Math.sqrt(底数) //平方根
*/
// 1.猜数字游戏,有一个0-100随机数 玩家有5次输入的机会猜,
// 每次猜一次,都要将结果告诉玩家是小了,还是大了
// 如果在5次机会内猜中,输出“聪明”,程序结束
// 如果5次机会用完 程序直接结束。
// var aid =Math.ceil(100*Math.random());
// console.log(aid);
// for(var i=5; i>0; i--){
// var num = parseInt(prompt('请输入一个0~100之间的整数'));
// if(num === aid){
// alert('聪明');
// break;
// }else if(num > aid){
// alert('结果大了');
// }else{
// alert('结果小了');
// }
// }
// 2.有一个4个长度的数组,每个位置装有0-9之间的随机数字,有10次输入的机会来猜每个位置的上的数是什么,
// 每次猜完4个数字以后都要给出提示,正确几个 错误几个,
// 只有位置和数字完全正确才算正确,其他情况全视为错误。
// var arr = [];
// for(var k=0; k<4; k++){
// arr[k] = Math.floor(10*Math.random());
// }
// console.log(arr.join('-'));
// for(var i=10; i>0; i--){
// var brr = [];
// var y = 0;
// var n = 0;
// for(var j=0; j<4; j++){
// brr.push(parseInt(prompt('请输入第'+(j+1)+'个数')));
// }
// for(var m=0; m<brr.length; m++){
// if(brr[m] === arr[m]){
// y++;
// }else{
// n++;
// }
// }
// if(y === 4){
// alert('正确');
// break;
// }
// alert('正确'+y+'个'+'\n'+'错误'+n+'个');
// }
// 3. 根据双色球摇奖规则,产生6个红球1个蓝球;红球范围1-33, 蓝球范围1-16. 红球不能有重复的产生。
// 思路:每次产生一个随机球,存入数组中,下一次产生的随机球,要和数组中的进行比较,如果有相等的,
// 则重新产生一个号(循环变量要减1),反之继续存入数组;直到产生6个球;蓝球单独产生;最后输出所有球。
var blue = [];
blue[0] = Math.ceil(16*Math.random());
var red = [];
red[0] = Math.ceil(33*Math.random());
for(var i=1; i<6; i++){
red[i] = Math.ceil(33*Math.random());
for(var j=0; j<i; j++){
if(red[j] === red[i]){
i--;//有重复这次不算,重新来
}
}
}
console.log(red.concat(blue).join('-'));
</script>
</body>
</html>