15 std::mt19937 Dice::mt;
22 Dice::Dice(
int num,
int side)
31 void Dice::Set(
int num,
int side)
37 void Dice::Initialize(
void)
39 std::random_device rd;
40 std::array<unsigned, 100> seeds;
41 for(
auto & s : seeds) s = rd();
42 std::seed_seq seq(seeds.begin(), seeds.end());
46 int Dice::GetNum(
void)
51 int Dice::GetSide(
void)
59 for(i = 0; i < this->
num; i++) n += Dice::Rand1(this->
side);
63 int Dice::Cast(
int num,
int side)
66 for(i = 0; i <
num; i++) n += Dice::Rand1(side);
70 int Dice::MaxCast(
void)
72 return this->num * this->
side;
75 int Dice::MaxCast(
int num,
int side)
80 int Dice::Rand0(
int max)
82 std::uniform_int_distribution<int> dist(0, max-1);
86 int Dice::Rand1(
int max)
91 bool Dice::Saving(
int diff)
93 std::normal_distribution<int> dist(0, 20);
94 return (diff >= dist(mt));
標準のシステム インクルード ファイルのインクルード ファイル、または 参照回数が多く、かつあまり変更さ...
static int Dice::Rand0(int max)
0を最小値とした乱数を返す