arc4randomを使用して乱数を作成しましたが、arc4randomにたとえば0ではなく-5から開始するように指示する方法はありますか?-3,4から4,3の範囲の乱数を作成したいので、iOSの開発ではまだそれほど良くありません。したがって、arc4randomで機能しない場合、他にどのような可能性がありますか(ガイドまたはそのようなもの)
質問する
2330 次
3 に答える
7
まず、を使用arc4random_uniform
して、目的の絶対範囲の乱数を取得します(-3から4の場合は7になります)arc4random_uniform(7)
。
の形式も表示される場合がありますarc4random() % max
が、これによりモジュロバイアスが導入され、分布のランダム性arc4random_uniform
が低下することが推奨されます。
その後、下限を調整します。
arc4random_uniform(7) - 3
于 2012-07-22T00:08:15.790 に答える
0
arc4random() % n
0..n-1から整数を返すのでarc4random() % (n - k) + k
、k..n-1から1を返します。k=-5を接続します。それはあなたが必要なものですか?
于 2012-07-22T00:07:48.923 に答える
0
0ではなく-5から開始する場合は、5を引くだけです。
-3から4の範囲の乱数を作成する場合は、0から7の数値を作成し、そこから3を引きます。
このarc4random
関数は、0から4,294,967,295までの数値を提供します。これを0から7の数値に変更するには、613,566,756で割ります。(またはarc4random_uniform
、バイアスを回避するために使用します。)
于 2012-07-22T00:07:58.117 に答える