首頁 >後端開發 >php教程 >php应用中怎样写一个优雅的随机算法

php应用中怎样写一个优雅的随机算法

WBOY
WBOY原創
2016-06-06 20:30:571070瀏覽

我的应用:随机生成-50到50之间的不包括0的整数,我使用的是mt_rand(-50,50),然后再次判断结果是不是为0,如果为0就重新随机一次,但是这样一点也不优雅,有没有更好的方法?

再进一步,如果要控制生成正负数的比例为4:6,你会怎么做?

回复内容:

我的应用:随机生成-50到50之间的不包括0的整数,我使用的是mt_rand(-50,50),然后再次判断结果是不是为0,如果为0就重新随机一次,但是这样一点也不优雅,有没有更好的方法?

再进一步,如果要控制生成正负数的比例为4:6,你会怎么做?

<code>function my_rand(){
    $num = mt_rand(1, 50); 
    $rand = mt_rand(1, 10);

    return $rand > 4 ? $num : -$num;
}
</code>

1.随机生成一批正数
2.把这批数字的前60%弄成负的,
3.打乱顺序,然后按顺序取就行了

谢邀,echo array_rand(array(mt_rand(-50,-1), mt_rand(1,50)));

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn