char mens[6][124]={ "\n Programa que genera y grafica una secuencia de Ruidos del Blanco al Browniano\n\n", " Se autoriza la distribucion y uso libre de este programa (freeware)\n", " Fernando Galindo Soria Cd. de Mexico\n", " fgalindo@ipn.mx www.fgalindosoria.com www.laredi.com\n\n", " 6 de Junio de 2004\n\n", " oprime una tecla para continuar"}; #include #include #include #include #include #include void main(void) { int i0,i, sonido,sonido0,n; int gd=DETECT,gm; // inicio clrscr(); printf("%s%s%s%s%s%s",mens[0],mens[1],mens[2],mens[3],mens[4],mens[5]); printf("\n****************\n**Y oprime otra tecla para parar**\n"); getch(); randomize(); initgraph(&gd,&gm,""); setrgbpalette(0, 63,63,63); setrgbpalette(1, 0, 0, 0); setcolor(1); n=1; while( !kbhit() && (n<620)) //si n=1 ruido blanco, si n=620 cercano a browniano { cleardevice(); i0=10; i=10; sonido0=0; sonido=random(100); line(0,150,320,150); line(i0,0,i0,160); //pone ejes para grafica de puntos line(0,350,320,350); line(i0,200,i0,360);//pone ejes para grafica de lineas while( !kbhit() && (i<=320)) { if(random(n)==0) sonido=random(100); //genera un punto aleatorio else sonido+=random(5)-2; // mueve el punto entre -2 y 2 pixels // sound(sonido*40); delay(55); //emite sonido i=i0+1; putpixel(i,150-sonido,1); //grafica de puntos line(i0,350-sonido0,i,350-sonido); //grafica de lineas i0=i; sonido0=sonido; } nosound(); n++; delay(300); } nosound(); // printf("\n****************\n**oprime una tecla para terminar**\n"); getch(); closegraph(); }