我有一个数字游戏(乐透),其中有1-36的数组。
myNum = [1,2,3...36];
玩家将从1-36中选择6个数字(成一个数组)。我也生成随机6个数字(放入另一个数组)。并且玩家根据与(我的)比赛的次数获胜。
我的意图和我现在的问题是确定玩家获胜的次数,如果与我的比赛匹配,则应将其添加到胜利中,如果没有匹配,则不应添加。这就是我希望设置胜率的方式:
winPercentage = 80; //80 percent
或任何其他方式。
我用我的一点JS知识做了一些尝试,搜索了Internet和SO,但是无法理解/找到一种方法。有人请帮助
如果我正确理解您想计算玩家对您的获胜百分比。
如果我是对的,那么您需要计算总比赛数和玩家赢得的比赛数。
说,
the_total_match_played (TM) = 80;
player_win(PW) = 30;
win_percengage(WP) = (PW * 100) / TM;
WP = (30 * 100) / 80;
= 37.5%
注意:如果我对您的问题理解有误,请随时发表评论。
基本上要评估的表达式是
第一或第二或第三或第四或第五或第六
P(第一)= P(第二)= P(第三)= P(第四)= P(第五)= P(第六)= 1/36
一个人会直观地认为结果会是
1/36 + 1/36 + 1/36 + 1/36 + 1/36 + 1/36 = 6 * 1/36 = 1/6],
但是我们需要跟踪重复的案例。例如,如果选择了第一个,也选择了第二个,则将使用上述公式计算两次,这将是不正确的。所以公式是
1/36 +
35/36 * 1/36 +
((1-35 / 36 * 1/36)* 1/36 +
((1-(1-35 / 36 * 1/36)* 1/36)* 1/36 +
((1-(1-(1-35 / 36 * 1/36)* 1/36)* 1/36)* 1/36 +
((1-(1-(1-(1-35/36 * 1/36)* 1/36)* 1/36)* 1/36)* 1/36
是
0.16289262235174626〜16.28%
对不起,它是不是
80%。您可以将此值0.16289262235174626分配给类似[]的变量var winChance = 0.16289262235174626;
并且只要需要百分比,就进行计算
100 * winChance