27.04.2011, 11:54 | #1 (permalink) |
Новичок
Регистрация: 08.04.2011
Сообщений: 5
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Доделать код в графике турбо паскаль
код: uses crt,graph; var x,y:integer; k:char; Procedure charik (var a:integer;b:integer); begin SetColor(10); Circle(a,b,40); SetColor(1); Circle(a,b,40); end; begin clrscr; initgraph(x,y,'c:\tp71\bgi'); x:=GetMaxX div 2;Y:=GetMaxY div 2; While (x>60) and (x<600) and (y>40) and (y<420) do begin charik(x,y); k:=#0; while (k<>#77) and (k<>#75) and (k<>#72) and (k<>#80) do begin k:=readkey; k:=readkey; end; ClearDevice; Case k of #77: x:=x+10; #75: x:=x-10; #72: y:=y-10; #80: y:=y+10; end; end; SetColor(1); Circle(600, GetMaxY div 2, 35); Repeat Until KeyPressed; closegraph; end. |
27.04.2011, 11:54 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Пожалуйста, посмотрите еще несколько тем по вашей проблеме Помогите составить программу на турбо паскаль Расчет производной на языке турбо паскаль Турбо Паскаль |
27.04.2011, 16:27 | #2 (permalink) |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
Немножко переделал. Выход по "Esc".
Код:
uses crt,graph; var x,y,Step:integer; k:char; Procedure charik (a:integer;b:integer); begin Circle(a,b,40); end; begin clrscr; initgraph(0,0,'c:\tp71\bgi'); x:=GetMaxX div 2; Y:=GetMaxY div 2; Step:=10; SetColor(10); Repeat charik(x,y); k:=ReadKey; ClearDevice; Case k of #77: if (x+Step)<600 then x:=x+Step; #75: if (x-Step)>60 then x:=x-Step; #72: if (y-Step)>40 then y:=y-Step; #80: if (y+Step)<420 then y:=y+Step; '+': Step:=Step+1; '-': if (step-1)>0 then Step:=Step-1; end; Until k=#27; closegraph; end. |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
|
|