どうも、ちょげ(@chogetarou)です。
Vectorの要素をランダムに取得する方法を紹介します。
方法

Vectorの要素をランダムに取得するには、rand()を使います。
まず、Vector名と[]を記述します。
そして、[]内に、rand()をVectorの要素数で割った余りをを指定します。
//myVec=対象のVector
T result = myVec[rand() % myVec.size()]
上記の[]
は、Vectorの要素をランダムに取得します。
使用例
#include <iostream>
#include <vector>
#include <ctime>
using namespace std;
int main(void){
vector<int> nums = { 11, 2, 8, 20, 7, 4 };
srand(time(NULL));
for (int i = 0; i < 5; i++) {
cout << nums[rand() % nums.size()] << endl;
}
return 0;
}
出力:
2
8
4
4
8
コメント