iOS の開発してて、ちょいと乱数を使いたくなった。本気な時は、メルセンヌ・ツイスターな乱数発生器を使うのだけど、今回はそこそこテスト的に使うだけで、いずれ消すコードだったので、システムが用意しているものを使った。
C だとシードを与えて rand()
関数を呼ぶのが普通。でも、Objective-C にはお手軽な乱数発生器がある。
arc4random_uniform
arc4random_uniform(N)
関数を呼ぶと、0 から N-1 の一様乱数が得られる。シードの設定は不要。サンプルはこんな感じ。
#include <stdlib.h>
...
...
int r = arc4random_uniform(64);
変数 r には 0 から 63 までの数が入る。手軽に使えるのでオススメ (同様の結果は arc4random() % N
でも得られるけど、arc4random_uniform(N)
の方が好ましい!)。
No comments:
Post a Comment