/* Se autoriza la distribucion y uso libre de este programa (freeware) */ /* Fernando Galindo Soria www.fgalindosoria.com www.laredi.com fgalindo@ipn.mx Cd. de Mexico */ /* Programa que genera un arbol con hojas 12/i/2002*/ #include #include #include #include #include #include void arbol(int,int,int,int); int n; char car; void main() { int gd=DETECT,gm; initgraph(&gd,&gm,""); printf("programa que genera arboles con hojas"); randomize(); n=10; car=100; while(n>0){ arbol(300,300,100,90); delay(1000); if((kbhit())!=0){ outtextxy(10,400, "dame un numero n para calcular la probabilidad 1/n de generar una hoja"); outtextxy(10,420,"poner 0 para terminar"); scanf("%d",&n); } cleardevice(); } closegraph(); } void arbol(int x0,int y0,int l,int an) { int x1,y1; if(random(n)==0){setcolor(2); circle(x0,y0,3);} else if (l > 0 ) { setcolor(15); x1=x0-(l*cos(an/57.29578)); y1=y0-(l*sin(an/57.29578)); line(x0,y0,x1,y1); arbol(x1,y1,l/1.7,an-57); arbol(x1,y1,l/1.7,an); arbol(x1,y1,l/1.7,an+57); } }