IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> рекурсия вроде бы
Sensitive
сообщение 9.06.2007 0:43
Сообщение #1


Пионер
**

Группа: Пользователи
Сообщений: 132
Пол: Женский
Реальное имя: Юлия

Репутация: -  0  +


Подскажите такое задание решается с помощью рекурсии или как-то по-другому?
(Построить окружность вокруг которой расположено 8 окружностей меньшего радиуса,и вокруг каждой из этих окружностей расположено еще по 8 окружностей также меньшего радиуса и т.д.)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
klem4
сообщение 11.06.2007 16:37
Сообщение #2


Perl. Just code it!
******

Группа: Модераторы
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

Репутация: -  44  +


Показала бы чтоли что получилось smile.gif

Прикрепленное изображение

У меня вот так вышло (идея судя по всему такая-же как предлагал Lapp):

uses crt, graph;

function _x (const angle: Integer; const cx, len: integer): Integer;
begin _x := round(cx + len * cos(45*angle / 180 * pi)); end;

function _y (const angle: Integer; const cy, len: integer): Integer;
begin _y := round(cy - len * sin(45*angle / 180 * pi)); end;

procedure Circles(cx, cy, radius, deep: Integer);
var
angle: Integer;
begin
if deep > 0 then begin
dec(deep);
for angle := 0 to 7 do begin
Circle (_x(angle, cx, radius * 2), _y(angle, cy, radius * 2), radius div 3);
Circles (_x(angle, cx, radius * 2), _y(angle, cy, radius * 2), radius div 4, deep);
end;
end;
end;

var
gd, gm: Integer;

begin
gd := detect;
initgraph(gd, gm, '');

Circle(GetMaxX div 2, GetMaxY div 2, 120);
Circles(GetMaxX div 2, GetMaxY div 2, 120, 3);

readkey;
closegraph;
end.


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 9.09.2025 23:36
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"