Me gustaría hacer un generador de números que no repita el número que ha dado (C++).Generador de números aleatorios no repetitivo
único que sé es:
int randomgenerator(){
int random;
srand(time(0));
random = rand()%11;
return(random);
} // Added this on edition
Esa función me da los números redundantes.
Estoy tratando de crear un programa de cuestionario que dé 10 preguntas en orden aleatorio y no quiero que ninguna de las preguntas vuelva a aparecer.
¿Alguien sabe la sintaxis?
Si su generador de números aleatorios no puede repetir, pierde un aspecto importante de la aleatoriedad. Si alguien conoce el período, su precisión de conjeturas aumenta a medida que se acerca al final del período, con un 100% de certeza en la última estimación. – corsiKa
srand() debe ejecutarse ** UNA VEZ ** y solo una vez al inicio del programa. –
Simplemente podría almacenar como último el último valor, y si el nuevo valor es igual al último, agregue un número aleatorio entre 1 y el valor máximo que desea menos el número que obtuvo. Puedes hacer esto simplemente con módulo y es más aleatorio que simplemente usar rand() :) –