Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
0 / 0 / 1
Регистрация: 13.02.2010
Сообщений: 46
1

Рекурсивное разбиение прямоугольной области правильным n-угольником

03.03.2011, 23:32. Просмотров 555. Ответов 1
Метки нет (Все метки)

Имеется алгоритмический язык.Помогите реализовать на паскале.
алг RectangleDraw(арг цел Current_It,int Count_It, арг вещ Radius, Xc, Yc, арг цел n)
нач
цел i;
если Current_It = Count_It то
Count1:= Count1+1;
если (Xc - Radius >= Xm и Xc + Radius <= XM и Yc - Radius >= Ym и Yc + Radius <=YM ) то
нц для i от 0 до n
Coord[i].x:=IX(Xc + Radius*cos(i*2*M_PI/n))
Coord[i].y:=IY(Yc + Radius*sin(i*2*M_PI/n))
кц
Coord[n]:=Coord[0]
Polygon(Coord,n+1)
все
иначе
нц для i от 0 до n
RectangleDraw (Current_It+1, Count_It, Radius/2., Xc+Radius/2. *cos(i*2*M_PI/n),Yc +Radius/2.*sin(i*2*M_PI/n),n)

RectangleDraw (Current_It+1,Count_It, Radius/2.,Xc, Yc, n)
кц
все
кон

алг RunProcess
нач
цел j, NumberG, IterNo, Xm, Ym, XM, YM;

вещ Radius, Xc, Yc;
Radius:= sqrt(pow(XM - Xm,2)+pow(YM - Ym,2))/2.;
Xc = Xm+(XM - Xm)/2.
Yc = Ym+(YM - Ym)/2.;

нц для j от 1 до IterNo
RectangleDraw(1,j,Radius,Xc,Yc, NumberG)
кц
кон
Iax=(double)(right - top -10)/(MaxX - MinX);
Ibx=(double)(right -5 - Iax*MaxX);
Iay=(double)(bottom - top -10)/(MinY - MaxY);
Iby=(double)(bottom -5 - Iay*MinY);


IX(double x) Iax*x+Ibx+0.5;
IY(double y) Iay*y+Iby+0.5
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.03.2011, 23:32
Ответы с готовыми решениями:

Раскраска произвольной прямоугольной области
Добрый день! На сетке задана произвольная область, состоящая из прямоугольников и &quot;жучок&quot;, ...

Рекурсивное разбиение прямоугольной области правильным n-угольником
Имеется алгоритмический язык.Помогите реализовать на паскале. алг RectangleDraw(арг цел...

Разбиение окна на области?
Помогите советом, а еще лучше каким-либо исходником, который реализовал бы разбиение окна на...

Движение по прямоугольной области
Есть прямоугольная область. Внутри области расположен прожектор. Прожектор представляет собой...

1
Эксперт С++
623 / 467 / 57
Регистрация: 28.01.2011
Сообщений: 605
03.03.2011, 23:39 2
Вы не ошиблись разделом? Вам, вероятно, сюда https://www.cyberforum.ru/pascal/
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.03.2011, 23:39

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Выделение прямоугольной области в datagridview
Доброго времени суток. У объекта datagridview есть метод SelectAll котроый выделяет все ячейки в...

найти массу прямоугольной области
Найдите массу прямоугольной области 0\leq x\leq 1 , 0\leq y\leq 3 с плотностью...

Раскраска произвольной прямоугольной области
Добрый день! На сетке задана произвольная область, состоящая из прямоугольников и &quot;жучок&quot;, ...

WinCE Событие клика в прямоугольной области
Приложение для Windows CE и .NET Compact Framework 3.5, соответственно доступные возможности куда...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.