|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
24.09.2009, 17:43 | #1 |
Форумчанин
Регистрация: 10.03.2009
Сообщений: 104
|
как исправить ошибку?
написала программу, которая рисует линию, похожую на дракона, но программа выдает ошибку "Error 113: Error in statement " кто может испраить ее. помогите!! или подскажите как ее исправить...я не пойму!
program Dragon2; uses Graph, Crt; var horfact, vertfact, x_max, y_max:real; x__max,y__max,x,y,dx,dy,i,p,xmin,xm ax,ymax,ymin,ixC,iyC:integer; fx,fy,f,xC,yC:real; GrDriver, GrMode:integer; n:longint; function IX(x:real):integer; begin IX:=round(x*horfact+0.5); end; {IX} function IY(Y:real):integer; begin IY:=round(y*vertfact+0.5); end; {IY} procedure GMove(x,y:real); begin MoveTo(IX(x), IY(y)); end; {GMove} procedure Draw(x,y:real); begin LineTo(IX(x), IY(y)); end; {Draw} function Xreal(x:integer):real; begin Xreal:=xC+f*(x-ixC); end; {Xreal} function Yreal(y:integer):real; begin Yreal:=yC+f*(y-iyC); end; {Yreal} procedure Step(r:integer; prescan:Boolean); var t,dx1,dy1:integer; begin if prescan then begin x:=x+dx; y:=y+dy; if(x<xmin) then xmin:=x; if(x>xmax) then xmax:=x; if(y<ymin) then ymin:=y; if(y>ymax) then ymax:=y; end else begin dx1:=dx div 4; dy1:=dy div 4; Draw(xreal(x+dx1), yreal(y+dy1)); x:=x+dx; y:=y+dy; Draw(xreal(x-dx1), yreal(y-dy1)); end; if(r=1) then begin t:=dx; dx:=-dy; dy:=t; end else begin t:=dx; dx:=dy; dy:=-t; end; {Step} procedure Gurve(prescan:boolean); var i,j,r:Longint; begin i:=1; while(i<=n) do begin i:=i+1; j:=i; while((j and 1)=0) do j:=j shr 1; r:=j and 3; Step(r,prescan); end; end; {Gurve} begin Writeln ('Poryadok krivoi?'); Readln(p); n:=1; for i:=1 to p do n:=n*2; GrDriver:=Detect; InitGraph(GrDriver, GrMode, 'C:\tp7\bgi'); x_max:=10; y_max:=7; x__max:=GetMaxX; y__max:=GetMaxY; horfact:=x__max/x_max; vertfact:=y__max/y_max; x:=0; y:=0; dx:=4; dy:=0; xmin:=10; xmax:=-10; ymin:=10; ymax:=-10; Gurve(true); fx:=x_max/(xmax-xmin); fy:=y_max/(ymax-ymin); if(fx<fy) then f:=fx*0.7 else f:=fy*0.7; ixC:=(xmin+xmax) div 2; iyC:=(ymin+ymax) div 2; xC:=x_max/2; yC:=y_max/2; x:=0; y:=0; dx:=4; dy:=0; gMove(xreal(x+dx div 4), yreal(y)); Curve(false); Readkey; CloseGraph; end; end. |
24.09.2009, 18:11 | #2 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Gurve -> Curve
end пропущен.. в конце end лишний... Код:
|
24.09.2009, 18:15 | #3 |
пропагандирую жизЪ
Форумчанин
Регистрация: 19.03.2007
Сообщений: 950
|
Код:
Посторонним В.
Последний раз редактировалось NSvirus; 24.09.2009 в 18:18. |
24.09.2009, 18:56 | #4 |
Форумчанин
Регистрация: 10.03.2009
Сообщений: 104
|
огроменное вам спасибо!!!!!!
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Помогите исправить ошибку | KARUSHEV | Помощь студентам | 9 | 10.09.2009 13:01 |
Как исправить ошибку типа: 16-разрядная подсистема MS-DOS | Mclaren | Помощь студентам | 10 | 28.04.2009 20:07 |
При переключении между чекбоксами - ошибка Stack overflow. Как исправить эту ошибку? | SkAndrew | Общие вопросы Delphi | 5 | 26.08.2008 21:32 |
Исправить ошибку | LLIypLLIyH | Помощь студентам | 5 | 16.06.2008 16:50 |
MySQL как исправить ошибку | Dengar | PHP | 8 | 03.03.2008 03:29 |