elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recopilación Tutoriales y Manuales Hacking, Seguridad, Privacidad, Hardware, etc


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  explicacion del programa que genera pi
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: explicacion del programa que genera pi  (Leído 2,630 veces)
kiara_luna

Desconectado Desconectado

Mensajes: 13


Ver Perfil
explicacion del programa que genera pi
« en: 10 Septiembre 2011, 19:13 pm »

hola necesito que me ayuden a entender el funcionamiento del siguiente programa, es el método montecarlo para hallar pi:

// se que  en esta parte se inician variables
double x,y;
  int  cantidad=0;
  double r, contador=0;
  double pi, media=0.0, varianza, desviacion;
  double suma = 0.0;

  printf("ingrese el numero de iteraciones: ");
  scanf("%d",&cantidad);
   srand(time(NULL));

     for ( contador=1; contador<cantidad; contador++)
   {
      x = (double)rand()/RAND_MAX;// en esta parte no se para que se hizo
      y = (double)rand()/RAND_MAX;
      r = x*x+y*y;// esto es para que tome los cuatro cuadrantes??
     
      if (r<=1)// en esta parte para que tome los menores a uno pero para que se hace??
       {
         contador++;//la cantidad y el contador que acumula?
         cantidad++;
         pi=contador*4/cantidad;//por que pi se hallo de ese modo?
   if(pi>=3.0){ //conque fin se hizo este if
   
         suma = suma + pi; //bueno aqui supongo que es para sumar todos los numero aleatorios que se generan
        media = suma/(double)cantidad ;
        varianza = ((suma - media)*(suma-media))/cantidad;
        desviacion = sqrt(varianza); }  //aqui supongo que se saco la raiz de varianza para hallar la desviacion
     }
       
   }
    printf("pi vale %20.14Lf\n",pi);
    printf("La media es %lf\n", media);
   
    printf("la varianza vale %20.14Lf\n",varianza);
    printf("la desviacion vale %20.14Lf\n",desviacion);
   

getch();
}


En línea

kiara
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Siempre me genera una excepcion
Ingeniería Inversa
Ch@CaL 2 2,305 Último mensaje 24 Enero 2007, 15:37 pm
por Ch@CaL
Borrar .tmp que genera los reportes « 1 2 »
Programación Visual Basic
jack06 10 5,909 Último mensaje 22 Julio 2009, 05:57 am
por seba123neo
por que no me genera el ejecutable ?¿
Programación C/C++
lupitapro 1 4,096 Último mensaje 14 Junio 2010, 23:07 pm
por Littlehorse
Programa en C sharp que genera un cuadrado magico , suma sus filas y columnas
.NET (C#, VB.NET, ASP)
david_quiroz19 0 9,405 Último mensaje 13 Noviembre 2011, 00:15 am
por david_quiroz19
Programa que genera patrones de palabras y números
Software
rocknard 1 1,133 Último mensaje 13 Junio 2016, 13:37 pm
por Orubatosu
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines