How to fill an array with random values in C++

2 Answers

0 votes
#include <iostream>
#include <ctime>

using std::cout;
using std::endl;

int main()
{
	int arr[5];

	srand((unsigned)time(NULL));

	for (int i = 0; i < 5; i++)
		arr[i] = rand() % 100 + 1;

	for (auto i : arr) {
		cout << i << " ";
	}

	cout << endl;

	return 0;
}


/*
run:

30 39 81 86 100

*/

 



answered Feb 19, 2018 by avibootz
0 votes
#include <iostream>
#include <algorithm>
#include <random>

using std::cout;
using std::endl;

int main()
{
	int arr[5];

	std::random_device rd;
	std::default_random_engine dre(rd());
	std::uniform_int_distribution<int> uid(0, 100);

	std::generate(arr, arr + sizeof(arr) / sizeof(int), [&]() { return uid(dre); });

	for (auto i : arr) {
		cout << i << " ";
	}

	cout << endl;

	return 0;
}


/*
run:

100 88 25 86 53

*/

 



answered Feb 19, 2018 by avibootz

Related questions

1 answer 245 views
1 answer 84 views
1 answer 211 views
2 answers 310 views
1 answer 105 views
1 answer 163 views
...