• Jueves 18 de Abril de 2024, 03:05

Autor Tema:  Funcion Rand()  (Leído 1100 veces)

jharad

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Funcion Rand()
« en: Viernes 15 de Febrero de 2008, 20:08 »
0
Hola a todos.

Tengo una duda sobre la función rand(). Si yo utilizo la funcion rand() en dos ordeandores distintos, utilizando la misma semilla, ¿los resultados que obtendría a ejecutar ese programa serían los mismo en esos dos ordenadores?

Saludos y gracias de antemano

Amilius

  • Miembro HIPER activo
  • ****
  • Mensajes: 665
    • Ver Perfil
Re: Funcion Rand()
« Respuesta #1 en: Viernes 15 de Febrero de 2008, 20:45 »
0
Si, siempre y cuando el algoritmo de generación de números pseudo aleatorios también sea el mismo y la secuencia en que se van "pidiendo" los números a rand() también sea la misma.

jharad

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Re: Funcion Rand()
« Respuesta #2 en: Viernes 15 de Febrero de 2008, 21:47 »
0
Yo creo que si, de todas formas aqui esta el codigo:

int main() {
   
   int i;
   double y = 0;
   
   const int NUM = 10000000;

   for(i=0;i<NUM;++i)
      y = y + (4 * sqrt(1 - pow(pseudoaleatorio(0,1),2)));
   
   cout << "La media de los valores es: " << y / 10000000<< endl;
   
   
}

double pseudoaleatorio(double a, double B) {

   double ale;
   
   if (a>b)
      ale = b + ((double)rand()/RAND_MAX *(a-B));
   else
      ale = a + ((double)rand()/RAND_MAX *(b-a));

   return ale;
 
}