/* GRAFICA LA FUNCION SENO DESDE UN ARCHIVO */ #include<graphics.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <math.h> FILE *Origen; char X[10], Y[10]; int Conv_X(double Val) { int Xc = Val*500/(2*M_PI); // (Val)(500)/2PI return Xc + 50; } int Conv_Y(double Val) { int Yc = -(Val * 200); return 250 + Yc; } void Pos(char *CAD) { int k=0, Pos = 0; while( CAD[Pos] != ',' ) { X[Pos] = CAD[Pos]; Pos++; } Pos++; while( CAD[Pos] != '\0' ) { Y[k] = CAD[Pos]; k++; Pos++; } //printf("%s\t%s", X, Y); } void Grafica( ) { double k = 0, Yfun=0, Xval, Yval; int Xpixel, Ypixel, Pos_Coma, Longitud; int Px1, Px2, Py1, Py2, Flag; Px1 = Px2 = Py1 = Py2 = Flag = 0; char CAD[80]; Origen = fopen("VAL_SENO.txt","r"); if ( Origen==NULL ) { printf( "Problemas con el archivo.\n" ); exit( 1 ); } fgets(CAD, 30, Origen); while ( feof(Origen) == 0 ) { Pos(CAD); Xval = atof(X); Yval = atof(Y); //printf("%s\t%s", X, Y); Xpixel = Conv_X(Xval); Ypixel = Conv_Y(Yval); //printf("%d\t%d\n", Xpixel, Ypixel); //circle(Xpixel, Ypixel, 1); if ( Flag ) { Px2 = Xpixel; Py2 = Ypixel; line(Px1, Py1, Px2, Py2); Px1 = Px2; Py1 = Py2; } else { Px1 = Xpixel; Py1 = Ypixel; Flag = 1; } fgets(CAD, 30, Origen); } fclose(Origen); } void Ejes( ) { setcolor(YELLOW); line(50, 50, 50, 450); // eje y line(25, 250, 550, 250); // eje x } int main() { int gd = DETECT,gm; initgraph(&gd,&gm,NULL); Ejes( ); Grafica( ); delay(60000); closegraph(); return 0; }