如何在C++中生成随机值的向量

如何在C++中生成随机值的向量

向量是动态数组,具有自动调整大小的能力,当插入或删除元素时它的存储由容器自动处理。使用 generate 函数和 rand () 函数也可以创建具有随机值的向量。

以下是两个 STL 函数的模板:

语法:

int rand(void): 它返回在 0RAND_MAX 范围内的伪随机数。

RAND_MAX: 是一个常量,其默认值可能因实现而异,但至少为32767。

void generate(ForwardIterator first, ForwardIterator last, Generator gen)

其中,

  • first: 指向容器第一个元素的前向迭代器。
  • last: 指向容器最后一个元素的前向迭代器。
  • gen: 一个生成器函数,基于将被分配的值。
  • 返回值: 由于它具有空返回类型,因此不会返回任何值。

为了每次都有不同的随机向量运行此程序,使用 srand() 函数。否则,每次编译后输出的向量都将相同。

语法:

void srand(unsigned seed): 此函数使用值种子(seed)来种植 rand() 使用的伪随机数生成器。

以下是上述方法的实现:

// C++ program to generate the vector
// with random values
#include <bits/stdc++.h>
using namespace std;
  
// Driver Code
int main()
{
    // Size of vector
    int size = 5;
  
    // Initialize the vector with
    // initial values as 0
    vector<int> V(size, 0);
  
    // use srand() for different outputs
    srand(time(0));
  
    // Generate value using generate
    // function
    generate(V.begin(), V.end(), rand);
  
    cout << "The elements of vector are:\n";
  
    // Print the values in the vector
    for (int i = 0; i < size; i++) {
        cout << V[i] << " ";
    }
  
    return 0;
}
The elements of vector are:
995552582 698831766 2088692742 1348138651 64302615

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程