数字游戏算法



我目前正在进行一些研究,以为小学生创建新的数学游戏,在容器内随机出现在0-9中。

一开始就提出一个问题。类似20的倍数。然后,用户将不得不单击正确的倍数,然后将其计数并给出分数。

因此,目前我有基本结构,弹出了difs,然后单击它们,它添加了正确的答案,这意味着此时没有错误的答案。

我想知道确定正确和错误答案的最佳方法是什么。我可以使用的算法是否可以解决答案是对还是错,我该如何将其链接到Divs?

<div id="container">
    <div id="char1" class="character right1" vaule="1"></div>
    <div id="char2" class="character right2" vaule="2"></div>
    <div id="char3" class="character right3" vaule="3"></div>
    <div id="char4" class="character right4" vaule="4"></div>
    <div id="char5" class="character right5" vaule="5"></div>
    <div id="char6" class="character right6" vaule="6"></div>
    <div id="char7" class="character right7" vaule="7"></div>
    <div id="char8" class="character right8" vaule="8"></div>
    <div id="char9" class="character right9" vaule="9"></div>
    <div id="char9" class="character right0" vaule="0"></div>
</div>

错误的答案将被给予班级" .wrong"。

小提琴:http://jsfiddle.net/skb3q/10/

您需要做的第一件事就是提出一个问题,以解决任何有意义的概念。

例如:"单击所有大于20"

的数字

您需要做的第二件事是将这个问题表达为一个布尔表达式,以评估为true或false。

(selection>20)

然后评估每个选择的表达式,以确定它是对还是错。

这是我的意思的示例。在游戏启动之前,脚本将适当的类添加到每个元素。问题是"选择大于5"的所有数字

实际上我已经完成了类似于此的气球游戏...

您完成了设计和动画工作,完成了70%的工作:D,逻辑中的小修改将完成工作……

我的解决方案将是:如果容器中的div是静态的,并且您已经为它们提供了ID步骤1:检查单击哪个DIV,然后分配了什么值

step2:在此处查看布尔表达式(根据您的要求),并根据您的布尔表达式增加正确的标志或不正确的标志,该标志在全球范围内被声明

可能会帮助您的示例代码

for(var i=0;i<8;i++)
{
    $("#char"+i).click(function(){
        //boolean expression comes here
        //increase the correct count or the incorrect count you want to do it
    })
}

如果char1,char2,char3,....是随机创建的divs和1,2,3,.....是与之关联的值,然后尝试此代码,然后让我知道

<script type="text/javascript">
    for (var i = 0; i < 8; i++) {
        $("#char" + i).click(function () {
            var val = $("#char" + i).val(); // so by this you will get the which one is clicked
            if (val % 15 == 0)
                hit++;
            else
                miss++;
            $("#hit").html("correct: " + hit);
            $("#miss").html("Incorrect: " + miss);
        })
    }
</script>

因此,当启用DIV并单击该功能时,请使用此功能,然后将其调用,并将检查布尔表达式并适当增加命中或错过标志。

注意:假设char1,char2,...是随机启用的div,如果不编写适当的随机创建的div的条件,则可以正常工作

"您只能通过更改布尔表达来检查任何倍数,我上面给出的是(val%15 == 0)

最新更新