如何在JavaScript中设置获胜次数或百分比

如何在JavaScript中设置获胜次数或百分比,javascript,probability,percentage,Javascript,Probability,Percentage,我有一个数字游戏(乐透),其中有一个1-36的数组 myNum = [1,2,3...36]; 玩家从1-36中选择6个数字(进入一个数组)。 我也会随机生成6个数字(放入另一个数组)。 而且玩家赢得一定数量的比赛取决于比赛的数量(与我的) 我的意图和我现在的问题是确定玩家获胜的次数, 如果有与我的比赛,它应该被添加到胜利,如果没有,它不应该。 这就是我希望设置获胜百分比的方式: winPercentage = 80; //80 percent 或任何其他方式 我用我的JS知识做了

我有一个数字游戏(乐透),其中有一个1-36的数组

  myNum = [1,2,3...36];
玩家从1-36中选择6个数字(进入一个数组)。 我也会随机生成6个数字(放入另一个数组)。 而且玩家赢得一定数量的比赛取决于比赛的数量(与我的)

我的意图和我现在的问题是确定玩家获胜的次数, 如果有与我的比赛,它应该被添加到胜利,如果没有,它不应该。 这就是我希望设置获胜百分比的方式:

   winPercentage = 80; //80 percent
或任何其他方式


我用我的JS知识做了一些尝试,搜索了互联网等等,但是没有理解/找到一种方法。如果我正确理解您想要计算玩家对您的获胜百分比,请有人帮忙

如果我是对的,那么您需要计算进行的总比赛玩家赢得的比赛数


注意:如果我对您的问题理解错误,请随时发表评论。

基本上要评估的表达式是

第一、第二、第三、第四、第五、第六

p(第一)=p(第二)=p(第三)=p(第四)=p(第五)=p(第六)=1/36

人们会直觉地认为结果是

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-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

80%会发生什么?你不能为这样的系统设置百分比,只能计算它。@NinaScholz,它的意思是,例如,玩家玩游戏100次,他应该只赢80次。也就是说,玩家与我的号码至少有一场比赛的次数是80次,而不是80次more@Jonathan请问我该怎么做?你是不是想找出获胜的百分比?或者想要限制获胜的百分比,最高应该是80%?哪一个是你的问题。好的,谢谢你的帮助。我想要的是,假设玩家玩这个游戏100次,他应该赢80次,然后输掉剩下的20场。同时,我可以随机让玩家赢,然后再输,但最后,玩家的总赢应该是100次尝试中的80次。赢的条件是什么?赢的条件是每当玩家的一个数字与我生成的一个数字匹配时。我认为很难精确定义80%的赢的百分比。如果球员打6场比赛,那么他必须赢4.8场比赛(不是4场也不是5场)。赢4.8场(分数)比赛是不可能的。是的,可能更多,比如90%,我只是用这个来解释。从我得到的回复来看,我似乎不得不操纵随机生成的数字
100 * winChance