【JS算法题】简单经典数组练手题,含答案~

   日期:2020-11-08     浏览:131    评论:0    
核心提示:1.猜数字游戏,有一个0-100随机数 玩家有5次输入的机会猜,每次猜一次,都要将结果告诉玩家是小了,还是大了。如果在5次机会内猜中,输出“聪明”,程序结束。如果5次机会用完 程序直接结束。<script> var num = parseInt(Math.random()*101)//定义一个随机数 document.writeln(num) for(var i = 1 ;i <=5;i++){ var guess

1.猜数字游戏,有一个0-100随机数 玩家有5次输入的机会猜,每次猜一次,都要将结果告诉玩家是小了,还是大了。如果在5次机会内猜中,输出“聪明”,程序结束。如果5次机会用完 程序直接结束。

<script>
        var num = parseInt(Math.random()*101)//定义一个随机数
        document.writeln(num)
        for(var i = 1 ;i <=5;i++){ 
            var guess = parseInt(prompt("please input a number : "))
            if(guess == num){ 
                alert("good! you are right!")
                break;
            }else if(guess>num){ 
                alert("too big")
            }else{ 
                alert("too small")
            }
            if(i==5){ 
                alert("sorry, game over !")
            }
        }
    </script>

2.有一个4个长度的数组,每个位置装有0-9之间的随机数字,有10次输入的机会来猜每个位置的上的数是什么,每次猜完4个数字以后都要给出提示,正确几个 错误几个,只有位置和数字完全正确才算正确,其他情况全视为错误。

<script>
        var arr = []
        var guess = []
        var num = 0
        //产生四个0-9的随机数
        for (var i = 0; i < 4; i++) { 
            arr[i] = parseInt(Math.random() * 10)
        }
        document.write(arr)
        for (var i = 0; i < 10; i++) { 
            for (var j = 0; j < 4; j++){ 
                guess[j] = parseInt(prompt(`请输入您猜测的第${ j+1}个数据`))
                if(guess[j]==arr[j]) num++
            }
            alert("您猜对了" + num + "个,猜错了" + (4-num) +"个")
        }
    </script>

3. 根据双色球摇奖规则,产生6个红球1个蓝球;红球范围1-33, 蓝球范围1-16. 红球不能有重复的产生。思路:每次产生一个随机球,存入数组中,下一次产生的随机球,要和数组中的进行比较,如果有相等的,则重新产生一个号(循环变量要减1),反之继续存入数组;直到产生6个球;蓝球单独产生;最后输出所有球。

运行效果图(数字是随机的):

css代码:

<style> .red { 
            width: 25px;
            height: 25px;
            text-align: center;
            line-height: 25px;
            background-color: red;
            float: left;
            border-radius: 50%;
            color: white;
            margin-right: 2px;
        }

        .blue { 
            width: 25px;
            height: 25px;
            text-align: center;
            line-height: 25px;
            background-color: blue;
            float: left;
            border-radius: 50%;
            color: white;
            margin-right: 2px;
        }
    </style>

js代码:

<script>
        //产生红球
        var arr = []
        var str = ""
        for (var i = 0; i < 6; i++) { 
            arr[i] = parseInt(Math.random() * 33 + 1)
            if (i >= 1) { 
                for (var j = i - 1; j >= 0; j--) { 
                    if (arr[j] == arr[i]) { 
                        i--
                    }
                }
            }
        }
        document.write(arr + "<br>")

        //产生蓝球
        arr.push(parseInt(Math.random() * 16 + 1))

        for (var k = 0; k < arr.length; k++) { 
            if (k == arr.length - 1) { 
                str += "<div class = 'blue'>"
                str += arr[k]
                str += "</div>"
            } else { 
                str += "<div class = 'red'>"
                str += arr[k]
                str += "</div>"
            }
        }
        document.write(str)
    </script>
 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服