makkonen

Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору void Tmainform::pr() { mas[it][0]=x; mas[it][1]=y; mas[it][2]=fl; if(it<h) { if(mas[it][2]==1) {it++;fl=1;pr();} if(mas[it][2]==2) {x=x-64/pow(4,it);y=y+64/pow(4,it);it++;fl=1;pr();} if(mas[it][2]==3) {y=y+64/pow(4,it);it++;fl=1;pr();} if(mas[it][2]==4) {x=x+64/pow(4,it);y=y+64/pow(4,it);it++;fl=1;pr();} if(mas[it][2]==5) {x=x+2*64/pow(4,it);y=y+64/pow(4,it);it++;fl=1;pr();} if(mas[it][2]==6) {x=x+2*64/pow(4,it);it++;fl=1;pr();} if(mas[it][2]==7) {x=x+2*64/pow(4,it);y=y-64/pow(4,it);it++;fl=1;pr();} if(mas[it][2]==8) {x=x+3*64/pow(4,it);it++;fl=1;pr();} if(mas[it][2]==9) {x=x+64/pow(4,it);y=y+2*64/pow(4,it);it++;fl=1;pr();} if(mas[it][2]==10) {x=x+2*64/pow(4,it);y=y+2*64/pow(4,it);it++;fl=1;pr();} if(mas[it][2]==11) {x=x+3*64/pow(4,it);y=y+2*64/pow(4,it);it++;fl=1;pr();} if(mas[it][2]==12) {x=x+4*64/pow(4,it);y=y+2*64/pow(4,it);it++;fl=1;pr();} if(mas[it][2]==13) {x=x+3*64/pow(4,it);y=y+3*64/pow(4,it);it++;fl=1;pr();} if(mas[it][2]==14) {x=x+64/pow(4,it);y=y+3*64/pow(4,it);it++;fl=1;pr();} if(mas[it][2]==15) {y=y+3*64/pow(4,it);it++;fl=1;pr();} if(mas[it][2]==16) {x=x+64/pow(4,it);y=y+4*64/pow(4,it);it++;fl=1;pr();} } else { PaintP(x,y); x=mas[it-1][0];y=mas[it-1][1];fl=mas[it-1][2]+1;it--; pr(); } if (it>0){ x=mas[it-1][0];y=mas[it-1][1];fl=mas[it-1][2]+1;it--; pr(); } } //--------------------------------------------------------------------------- void __fastcall Tmainform::Button1Click(TObject *Sender) { Image->Canvas->Pen->Width = 2; x=110; y=110; it=0; fl=1; pr(); } int h,i;int mas[6][3]; int x,y,it,fl; -глобальные h-количество итераций. PaintP(x,y);-просто чертит точку на координатах х и у Предположительно неправильно выходит из рекурсии. | Всего записей: 79 | Зарегистр. 16-10-2006 | Отправлено: 13:57 31-10-2006 | Исправлено: makkonen, 15:54 31-10-2006 |
|