PHP基于机会生成数字

PHP基于机会生成数字,php,math,Php,Math,我要做的是生成一个介于1.00到200.00之间的浮点数,让我们调用这个数字X。X决定一个用户“赢”多少,就像赌场里的乘数一样。用户下注10美元,X为23.21,用户赢10*23.21 如果房子和用户在长期内应该有相同的赔率(+/-0),那么X成为200.00的概率应该是1/199-1/200。这意味着Y=1/(X-1)-1/X,其中Y=发生X的概率百分比 百分比Y应该随机化,我想做一个frand(0,100,15)。其中: function frand($min, $max, $decimal

我要做的是生成一个介于1.00到200.00之间的浮点数,让我们调用这个数字
X
。X决定一个用户“赢”多少,就像赌场里的乘数一样。用户下注10美元,
X
为23.21,用户赢
10*23.21

如果房子和用户在长期内应该有相同的赔率(+/-0),那么
X
成为200.00的概率应该是
1/199-1/200
。这意味着
Y=1/(X-1)-1/X
,其中Y=发生
X
的概率百分比

百分比
Y
应该随机化,我想做一个
frand(0,100,15)
。其中:

function frand($min, $max, $decimals = 0) 
{
  $scale = pow(10, $decimals);
  return mt_rand($min * $scale, $max * $scale) / $scale;
}
这意味着我们将知道Y,因此下一步应该使用
Y=1/(X-1)-1/X
来确定
X
。但是,我不知道如何在PHP中实现这一点。相同功能的其他方式:

Y = 1/(X - 1) - 1/X
X^2 - X = 1/Y
X(X - 1) = 1/

所以我的问题是,;我如何解决
X
问题,或者有更好的方法来实现我正在尝试的目标?

让我把这一点弄清楚。浮点数介于1.00和200.00之间,例如123.45将是19901年可能的值之一?因为您将乘数>=1,用户将永远不会输,因为他至少会赢回赌注(1x是最坏的情况)。那么你所说的房子和用户应该有相同的几率?什么几率?是的,KIKO软件,这是正确的。那么x=200.00的变化是1/19901,而不是1/199-1/200。这是真的,dragoste。那么它应该从0到200?但是1的机会是,1/0-1/1。让我说清楚。浮点数介于1.00和200.00之间,例如123.45将是19901年可能的值之一?因为您将乘数>=1,用户将永远不会输,因为他至少会赢回赌注(1x是最坏的情况)。那么你所说的房子和用户应该有相同的几率?什么几率?是的,KIKO软件,这是正确的。那么x=200.00的变化是1/19901,而不是1/199-1/200。这是真的,dragoste。那么它应该从0到200?但是1的机会是,1/0-1/1。那是