-乱数の使い方 --banditの中で簡単に使う方法.ちゃんとした使い方は各自調べた方がよい +0.3の確率で何か(ランダム)をして、0.7の確率で何か(ちゃんと)をする、のような使い方 -0.3の確率で何か(ランダム)をして、0.7の確率で何か(ちゃんと)をする、のような使い方 double r = (double) rand() / (double)RAND_MAX; if( r <= 0.3){ なにか(ランダム) }else{ なにか(ちゃんと) } --rand()は0からRAND_MAX(と定義されている整数)の間のランダムな数を出力する。なので、 ---rand() / RAND_MAX --で、0から1の間のランダムな数となる。よって、これが(上記の例だと)0.3より小さい数である、と考えるのは0.3の確率で生じる、というのと同じことである。 +0から4の間の選択しをランダムに選ぶ -0から4の間の選択しをランダムに選ぶ int r = rand() % 5; switch(r){ case 0: break; case 1: ... } -rand() % 5 とやると5で割ったあまりの数(0から4)が得られる。ここで、rand()はランダムな整数なので、ランダムな0から4までの値を得ることができる。