Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.03.2010, 17:29   #1
DiLemma
Пользователь
 
Регистрация: 15.03.2010
Сообщений: 15
Печаль графика в Pascal

вывести N концентрических кругов. радиус R главного круга задан. радиус внутренних кругов r0 меняется с шагом К. никак не могу сделать вывод шагом помогите, плиз, кто чем сможет


Код:
 Program Ornament5;
Uses CRT, Graph;
const
R=190;
var
r0:array[1..180] of integer;
x0,y0,sh,n,i,k:integer;
driver,regim,error: integer;
a,b:word;

Begin
clrscr;
  Detectgraph(driver,regim);
Initgraph(driver,regim,'G:\TP7\BGI');
Error:=GraphResult;
if Error <> grOK then
begin
writeln(GraphErrorMsg(Error));
Halt(Error)
end;

GetAspectRatio(a,b);
x0:=GetMaxX div 2;
y0:=GetMaxY div 2;
SetAspectRatio(GetMaxX-a*x0 div 2,GetMaxY-b*y0);
SetLineStyle(0,0,3);
SetColor(LightGreen);

Circle(x0,y0,R);


readln;
CloseGraph;
End.
DiLemma вне форума Ответить с цитированием
Старый 16.03.2010, 18:05   #2
sllh_111
Форумчанин
 
Регистрация: 10.02.2010
Сообщений: 137
По умолчанию

Перед чем как начертить круг делай задержку, вот и все дела
sllh_111 вне форума Ответить с цитированием
Старый 16.03.2010, 18:16   #3
DiLemma
Пользователь
 
Регистрация: 15.03.2010
Сообщений: 15
По умолчанию

sllh_111,плохо представляю что это будет...

сделала ^_^ может кому пригодится
Код:
Program Ornament5;
Uses CRT, Graph;
var
x0,y0,sh,n,i,R:integer;
driver,regim,error: integer;
a,b:word;

Begin
clrscr;
  Detectgraph(driver,regim);
Initgraph(driver,regim,'G:\TP7\BGI');
Error:=GraphResult;
if Error <> grOK then
begin
writeln(GraphErrorMsg(Error));
Halt(Error)
end;
readln(n);
GetAspectRatio(a,b);{коэффициент сжатия }
x0:=GetMaxX div 2;{центр}
y0:=GetMaxY div 2;
R:=190;
Sh:=R div n;{шаг уменьшения радиуса}
SetAspectRatio(GetMaxX-a*x0 div 2,GetMaxY-b*y0);{переназначение коэффициента сжатия }
SetLineStyle(0,0,3);
SetColor(LightGreen);
Circle(x0,y0,R);
for i:=1 to n do begin
Circle(x0,y0,R);
R:=R-Sh;{новый радиус}
end;
readln;
CloseGraph;
end.

Последний раз редактировалось DiLemma; 16.03.2010 в 18:36.
DiLemma вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Графика в PASCAL Deniska112 Помощь студентам 2 12.12.2009 17:21
pascal графика world12_tk Помощь студентам 1 25.04.2009 18:56
[Pascal] Графика Рамик Помощь студентам 5 15.04.2009 03:06