alright, here it is:
void drawFractal() {
double x,z,inc;
int size=divisions;
double terrain1d[(divisions+1)*(divisions+1)];
size++;
inc=2.f/size;
z=-1.f;
int temp=0;
for (int r=0;r<size;r++) {
for (int s=0;s<size;s++) {
terrain1d[temp]=terrain[r];
temp++;
}
}
for (int i=0;i<size;i++) {
x=-1.f;
for (int j=0;j<divisions;j++) {
draw(x,terrain1d[(i*size)+j],z,x+inc,terrain1d[(i*size+j+1)],z);
if (i<divisions)
draw(x,terrain1d[(i*size)+j],z,x,terrain1d[((i+1)*size+j)],z+inc);
x+=inc;
}
if (i<divisions)
draw(x,terrain1d[(i*size)+j],z,x,terrain1d[((i+1)*size+j)],z+inc);
z+=inc;
}
}