0

arc4randomを使用して乱数を作成しましたが、arc4randomにたとえば0ではなく-5から開始するように指示する方法はありますか?-3,4から4,3の範囲の乱数を作成したいので、iOSの開発ではまだそれほど良くありません。したがって、arc4randomで機能しない場合、他にどのような可能性がありますか(ガイドまたはそのようなもの)

4

3 に答える 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() % n0..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 に答える