Linguaggio C/C++ – Popolare un array di numeri casuali ripetuti e non

Caricare un vettore di N elementi con numeri pseudo-casuali compresi nel range da 0 a 9 utilizzando le funzioni rand(), time(NULL) e srand().
Considerare le due opzioni che consentano o meno la ripetizione dei numeri.

A) Generazione con ripetizione


#include <iostream>
#include <time.h>
#include <cstdlib>
using namespace std;

const short Dimensione = 4;

int main()
{
int a[Dimensione];
short i;
srand (time(NULL));

for(i=0;i<Dimensione;i++)
a[i]=rand() % 10;

for(i=0;i<Dimensione;i++)
cout << a[i] << " ";

system ("PAUSE");
return 0;
}

B) Generazione senza ripetizione


#include <iostream>
#include <time.h>
#include <cstdlib>
using namespace std;

const short Dimensione = 4;

int main()
{
int a[Dimensione];
short i, j;
srand (time(NULL));

for(i=0;i<Dimensione;i++)
{
a[i]=rand() % 10;
for(j=0;j<i;j++)
{
if(a[i]==a[j])
{
i--;
break;
}
}
}

for(i=0;i<Dimensione;i++)
cout << a[i] << " ";

system ("PAUSE");
return 0;
}

Visite: 34508