¿Cómo utilizar C para generar dos números aleatorios?
// Clase RandNum, utilizada para generar números aleatorios. . .
clase RandNum
{
público:
RandNum();
~RandNum();
private:
bool randKey; //Controla el número de ejecuciones de tiempo(0) en la función
public:
int getRandNum( ); //Generar números aleatorios
};
/**---------------------- -------------------------------------------------- -- ---
* Sección de implementación de RandNum
*-------------------------- -------------------------------------------------- --
*/
RandNum::RandNum()
{
randKey = true //Establece el interruptor en activado; true
}
RandNum::~RandNum()
{
//No es necesario realizar ningún procesamiento
}
int RandNum::getRandNum()
{
if( randKey) //Para evitar errores, la función que genera el La semilla aleatoria solo se puede ejecutar una vez
{
randKey = false; //Apague el interruptor después de ejecutar una vez
srand((unsigned)time(0 )); //Generar semillas
}
return rand(); //Llamar a rand() para generar un número aleatorio y devolverlo
}
Esto es lo que hice antes de la clase A en un minijuego.
Puedes consultarlo.
Si desea generar dos números aleatorios, solo necesita llamar a RandNum() y el valor de retorno será aleatorio.
Aquí hay otro ejemplo:
#include lt;iostreamgt;
#include lt;ctimegt;
usando el espacio de nombres std; /p>
int main()
{
int a[4]
srand((unsigned)time(NULL)); /p>
for(int i=0;ilt;4;i)
{
a[i]=rand()10
> for(int j=0;jlt;i;j)
{
if(a[j]==a[i])
{
i--;
romper
}
}
coutlt;lt;a[ i ]lt; lt; endl;
}
return 0;
}
//Espero poder estudiar algo tan simple. problema yo mismo Eso es todo, no pienses en dejar que otros terminen todo y comértelo tú mismo, entonces no aprenderás nada, entonces, ¿de qué sirve? Creo que puedes obtener la respuesta que deseas simplemente modificando lo anterior.