PHP 概率计算显示问题
Jun 23, 2016 pm 02:03 PM 我现在有2个数组:
$arr_str=array(1,3,2,3,5,2); //需要显示键值的数组
$chance_str=array(0.25,0.27,0.98,0.58,0.33,0.25); //显示数值的概率数组
现在每次访问页面的时候,值显示$arr_str中的一个键值,
每次显示这个键值的概率是$chance_str来控制,肯定会有总和大于100%的时候
这$chance_str的键值是会实时修改的,这个我该咋弄呢,各位大侠帮帮忙!
回复讨论(解决方案)
$chance_str
将这个数组每一个都 X100,确定每一个都是整数
然后把每个元素相加得 总和 $count
再生成一个随机数,0 - $count
看随机数在哪个区间
0-25则在第一区间
26 - (25+27) 第二区间
(25+27)+1 - (25+27+98) 第三区间,如此累推。。。。
echo array_sum($chance_str); //2.66
无论怎么做都不可能完成这样的概率分布
问题是你的概率是怎么定的?定义的方法不同自然就不同
如果每次只显示一个数,全部完成为1.00,则属于不可能的任务,而且有个0.98简直就是离谱
但如果每次显示多个数,还是有可能做到的
就是“概率”的概念转为“权重”的概念,权重总和可以>1,也可以有权重叠加的情况

Artikel Panas

Alat panas Tag

Artikel Panas

Tag artikel panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

11 skrip pemendek URL terbaik PHP (percuma dan premium)

Bekerja dengan Data Sesi Flash di Laravel

Respons HTTP yang dipermudahkan dalam ujian Laravel

Curl dalam PHP: Cara Menggunakan Pelanjutan PHP Curl dalam API REST

Bina aplikasi React dengan hujung belakang Laravel: Bahagian 2, React

12 skrip sembang php terbaik di codecanyon
