这是我用C语言实现分形学图形的第一个程序,无奈我手头这方面的资料不多,所以可能用了最笨的办法,假如你发现其中的不足或错误,请不吝赐教。
/*Mandelbrot集图形的C语言源代码:*/
/*分形学图形*/
#include<graphics.h> #include<stdlib.h> #include<math.h>
int main() { float m,dx,dy,x,y,x_n,y_n,Cx,Cy; int n,i,j,L=4;
int gdriver=DETECT,gmode;
initgraph(&gdriver,&gmode,""); /*初始化图形系统*/ setbkcolor(1); dx=3.0/639; dy=2.2/479; for(i=0;i<639;i++) { Cx=-1.9+i*dx; for(j=0;j<479;j++) { Cy=-1.2+j*dy; x=y=0; for(n=0;n<=1000;n++) { x_n=x*x-y*y+Cx; y_n=2*x*y+Cy; m=x_n*x_n; if(m>L) break; x=x_n; y=y_n; } putpixel(i,j,(int)(0.4*m)%16); } } getch(); closegraph(); }
|