/*fractal de dragon 19/x/96*/ /*Fernando Galindo Soria*/ #include #include #include #include #include #include #include void caracol(int,int,float,int); void caracol1(int,int,float,int); int ang1,ang2,car; void main() { int gd=DETECT,gm; initgraph(&gd,&gm,""); /* randomize(); while(car!=27){ ang1=7+random(360); ang2=3+random(360); gotoxy(1,1);printf("fractal de dragon ang1=%d ang2=%d",ang1,ang2); */ setcolor(1); caracol(560,200,50,90); setcolor(1); caracol1(180,390,50,270); /* if (kbhit())car=getch(); else delay(2000); cleardevice(); } */getch(); closegraph(); } void caracol(int x0,int y0,float l,int an) { int x1,y1; if (!kbhit()) if (l >=1 ) //47, 127, 12 { x1=x0+(l*cos(an/57.29578)); y1=y0+(l*sin(an/57.29578)); line(x0,y0,x1,y1); setcolor(3); caracol(x1,y1,l-12,an+47); setcolor(1); caracol(x1,y1,l-1,an+12); } } void caracol1(int x0,int y0,float l,int an) { int x1,y1; if (!kbhit()) if (l >=1 ) //47, 127, 12 { x1=x0+(l*cos(an/57.29578)); y1=y0+(l*sin(an/57.29578)); line(x0,y0,x1,y1); setcolor(3); caracol(x1,y1,l-12,an-47); setcolor(1); caracol(x1,y1,l-1,an-12); } }