私はちょうどC++に潜入しています。私は乱数ジェネレータを作ることにしました(乱数はどれくらいですか、本当に関係ありません)。コードの大部分はネットからコピーされますが、私の初心者の目はこれで間違ったものを見ることはできません。毎回 "6"以外の数字を与えるためにこれを微調整する方法はありますか?乱数発生器の何が問題なのですか?
#include <iostream>
#include <string>
#include <cstdlib>
using namespace std;
int random_number(int min, int max)
{
srand((unsigned)time(0));
int random_num;
int range=(max-min)+1;
random_num = min+int(range*rand()/(RAND_MAX + 1.0));
return random_num;
}
int main()
{
for(int i =0;i < 100;i++)
{
cout << random_number(3,10) << endl;
}
}
1回だけシードするとどうなりますか?私。メイン関数のループの前にsrandを移動しますか? – dreamlax
6 ??いいえ、いいえ、乱数は* 4 *でなければなりません - http://xkcd.com/221/ – AviD