2010/10/13

ランダムな数値を取得する - rand() arc4random()

ランダムな数値を取得するにはrand関数を使用すれば良い。

ランダムな数値を取得する

int random_nummber;
random_nummber = rand() % 10;//0~9の数値をランダムに取得
しかしこれだとループなどで何度も取得する際に毎回同じ値になってしまう。
そのためにランダム関数を呼ぶ前に初期化する必要がある。

ループでランダムな数値を取得する

srand(time(NULL));//被らない数値を渡して初期化
for(int i=0; i<10; i++){
    int random_number;
    random_number = rand() % 10;//0~9の数値をランダムに取得
    NSLog(@"%d", random_number);
}
これでループでの毎回ランダムば数値が取得できる。
しかしObjective-Cには初期化と生成をまとめたarc4random関数が存在する。

ループでランダムな数値を取得する

for(int i=0; i<10; i++){
    int random_number;
    random_number = arc4random() % 10;//0~9の数値をランダムに取得
    NSLog(@"%d", random_number);
}
これは便利だ。
普段からarc4random関数を使えば問題はなさそうですね!

0 件のコメント:

コメントを投稿