ホームページ > バックエンド開発 > PHPチュートリアル > php应用中怎样写一个优雅的随机算法

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

WBOY
リリース: 2016-06-06 20:30:57
オリジナル
1066 人が閲覧しました

我的应用:随机生成-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)));

関連ラベル:
php
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート