Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Delphi, Kylix and Pascal


Ответ
 
Опции темы Опции просмотра
Старый 27.04.2011, 11:54   #1 (permalink)
omik
Новичок
 
Регистрация: 08.04.2011
Сообщений: 5
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
Question Доделать код в графике турбо паскаль

надо добавить клавиши для увеличения и уменьшения шага. Надо до пятницы крайняк понедельник. ну очень надо
код:
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.
omik вне форума   Ответить с цитированием

Старый 27.04.2011, 11:54
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Пожалуйста, посмотрите еще несколько тем по вашей проблеме

Помогите составить программу на турбо паскаль
Расчет производной на языке турбо паскаль
Турбо Паскаль

Старый 27.04.2011, 16:27   #2 (permalink)
Vladimir_S
Специалист
 
Регистрация: 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.
Vladimir_S вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 03:15.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.