Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Random 随机整数集向量_Random_Vector_Integer_Set - Fatal编程技术网

Random 随机整数集向量

Random 随机整数集向量,random,vector,integer,set,Random,Vector,Integer,Set,我正试图编写一个小程序来创建一个随机整数集向量,但问题是一旦创建了第一个集合,程序就会在后续迭代中不断存储相同的数字集。如果您能帮助解释或纠正此问题,我们将不胜感激。谢谢 #include<iostream> #include<cstdlib> #include<ctime> #include<set> #include<vector> using namespace std; typedef set<int> Set_I;

我正试图编写一个小程序来创建一个随机整数集向量,但问题是一旦创建了第一个集合,程序就会在后续迭代中不断存储相同的数字集。如果您能帮助解释或纠正此问题,我们将不胜感激。谢谢

#include<iostream>
#include<cstdlib>
#include<ctime>
#include<set>
#include<vector>
using namespace std;
typedef set<int> Set_I;
typedef set<int>::iterator It;
typedef vector<set<int> > vec_Set;


int random();
void print_set(Set_I s);
void print_vec(vec_Set v);

int main()
{   
    srand(time(0));

    Set_I s;
    vec_Set v;
    v.resize(4);
    for(int i=0; i<4;i++)
    {

        //cout << s.size() << " " <<endl;
        while(s.size()<6)
        {
            s.insert(random());

        }

        v[i] = s;
        s.empty();


    }
    //print_set(s);
    print_vec(v);

    cout << endl << s.size() <<endl << v.size();
    system("PAUSE");
}

int random()
{
    int r = 1 + rand()%49;
    return r;
}

void print_set(Set_I s)
{
    for(It it=s.begin(); it!=s.end(); it++)
        {
            cout << *it << " ";
        }
        cout << endl;
}

void print_vec(vec_Set v)
{
        for(int i=0;i<v.size();i++)
        {
            cout << "{ ";
            for(It j = v[i].begin() ; j != v[i].end() ;j++)
            {
                cout << *j << " ";
            }
            cout <<"}";
            cout <<endl;
        }
}
#包括
#包括
#包括
#包括
#包括
使用名称空间std;
打字机;
typedef set::迭代器;
typedef向量向量集;
int random();
无效打印集(集);
无效打印向量(向量集v);
int main()
{   
srand(时间(0));
设置_I s;
向量集v;
v、 调整大小(4);
for(int i=0;is.empty()返回一个bool,说明集合是否为空。它对集合的成员没有影响

必须使用s.clear()清空(清除)集合。

s.empty()返回一个bool,说明集合是否为空。它对集合的成员没有影响


必须使用s.clear()清空(清除)集合。

请为此问题添加语言标记。请为此问题添加语言标记。