0

```
#include <conio.h>
#include <graphics.h>
#include <math.h>
#include <stdlib.h>
#include <dos.h>
void serp(int level, int Ax, int Ay, int Bx, int By)
{
int poly[4]={Ax,Ay,Bx,By};
setfillstyle(SOLID_FILL,YELLOW);
if (level>0)
{
serp(level-1, Ax,Ay ,(2*Ax+Bx)/3,(2*Ay+By)/3);
serp(level-1,(2*Ax+Bx)/3,(2*Ay+By)/3,(Ax+Bx)/2+sqrt(3)*(Ay-By)/6,(Ay+By)/2+sqrt(3)*(Bx-Ax)/6);
serp(level-1,(Ax+Bx)/2+sqrt(3)*(Ay-By)/6,(Ay+By)/2+sqrt(3)*(Bx-Ax)/6,(Ax+2*Bx)/3,(Ay+2*By)/3);
serp(level-1,(Ax+2*Bx)/3,(Ay+2*By)/3,Bx,By);
}
else fillpoly(2,poly);
}
int main(void)
{
int graphdriver=DETECT, graphmode;
initgraph(&graphdriver, &graphmode, "");
int i, N=8, Bx=0, By=235, Ax=635, Ay=235;
for (i=0; i<N; i++)
{
serp(0,Ax,Ay,Bx,By);
serp(1,Ax,Ay,Bx,By);
serp(2,Ax,Ay,Bx,By);
serp(3,Ax,Ay,Bx,By);
serp(4,Ax,Ay,Bx,By);
serp(5,Ax,Ay,Bx,By);
serp(6,Ax,Ay,Bx,By);
serp(7,Ax,Ay,Bx,By);
delay(1000);
cleardevice();
}
getch();
closegraph();
return 0;
}
```

what i could like to know is how do i fill each object with different colours?