char mens[7][124]={ "\n Programa que grafica la funcion\n", "f(t)=3coseno(5t-p/2)+6coseno(7t+p)+4coseno(10t-p/3)+5coseno(14t+p/3)\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", " 12 de Agosto de 2004\n\n", " oprime una tecla para continuar"}; #include #include #include #include #include #include void main(void) { int basey, angulo, amplitud, frecuen, t; // funcion=(3*cos(5*t-phi/2)+6*cos(7*t+phi)+4*cos(10*t-phi/3)+5*cos(14*t+phi/3))) int i, frecu[]={5, 7, 10, 14}, amplit[]={3, 6, 4, 5}; float fase[]={-3.1416/2, 3.1416, -3.1416/3, 3.1416/3}; float phi=3.1416, funcion,factory ; int gd=DETECT,gm; // inicio clrscr(); printf("%s%s%s%s%s%s%s",mens[0],mens[1],mens[2],mens[3],mens[4],mens[5],mens[6]); getch(); initgraph(&gd,&gm,""); setrgbpalette(0, 63,63,63); setrgbpalette(1, 0, 0, 0); setcolor(1); basey=200; factory=10; line(0,basey,360,basey); line(0,0,0,basey*2); // Proceso moveto(0,basey-(amplit[0]*cos(0)*factory+fase[0])); //grafica de lineas for(angulo=0;!kbhit() && (angulo<360); angulo++)//Grafica funcion { funcion=0; for(i=0;!kbhit() && (i<4); i++) //Calcula funcion como suma de se¤ales funcion+=(amplit[i]*cos(frecu[i]*angulo/57.2+fase[i])); lineto(angulo,basey-funcion*factory); //grafica de lineas } // Fin // printf("\n****************\n**oprime una tecla para terminar**\n"); getch(); closegraph(); }