Ciao, ho scritto un programma nel quale mi serviva creare dei numeri in modo random.
Io ho scritto:
int n;
n = rand()%80000+1;
volendo generare un numero compreso tra 1 ed 80000 (giusto?)
Il fatto è che io devo generare almeno 100000 di questi numeri (anche ripetendoli) e quindi ho inserito quell'istruzione in un ciclo while(k!=100000) inizializzando k a zero.
Ogni volta che genero un nuovo numero lo inserisco in una lista di interi per tenere memoria solo dei numeri che sono tutti diversi. Qui ho il problema: nonostante genero 100000 numeri compresi tra 1 e 80000 alla fine mi ritrovo sempre con 32768 numeri diversi, non uno di più.
A cosa è dovuto??
Perchè non ne genera altri??
Vi ringrazio per l'aiuto.