|
初めて投稿させていただきます。tutidaと申します。
今、ミニロト組み合わせを作ってくれるプログラムを遊びで書いています。
「購入枚数」を入力させて、一枚につき5つのランダムに取出した数値を、入力
枚数分、ランダムで組み合わせを出力してくれるものです。
そこで、一枚ごとに
srand(time(NULL)
を用いて乱数を初期化してみたのですが、例えば、「10枚購入」と入力して
みると出力された「10枚分」の組み合わせがすべて同じになってしまいます。
コードに間違いがあるのかもしれないと思ったりもしたのですが、その他に、
srand(time(NULL))のtime(NULL)のぶぶんが、処理の速さ(10枚くらいですか
ら一瞬です)で同じ数値を吐き出し、それによって毎回同じように初期化されて
しまうのではないかとの疑問をもち、printf("%f",time(NULL));でかくにんし
たところ、まいかい同じ数値が吐き出されていました。
このように、毎回違う組み合わせを数組取りだしたいときには、srand()の引
数に何を指定すればよいのでしょうか?
ご教授よろしくお願いします。
|