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

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

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

> Рекурсия и графика, Гдето ошибка
Anastacia Adesso
сообщение 13.09.2006 17:39
Сообщение #1


Пионер
**

Группа: Пользователи
Сообщений: 92
Пол: Мужской
Реальное имя: Stanislav

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


Ребята!
Где-то тут ошибка.
Условие в том, что надо рисовать сначала крест потом круги с радиусом в его концах. А потом опять крест.
И так чтоб все потихоньку уменьшалось в 2 раза.
Вот сделала, но надо чтоб он не рисовал ничего в сторону центра.
Не подскажете, пожалуйста, в чём прикол?


Прикрепленные файлы
Прикрепленный файл  UZD3.PAS ( 1014 байт ) Кол-во скачиваний: 203


--------------------
Ben sensiz yaşayamam
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
volvo
сообщение 13.09.2006 17:55
Сообщение #2


Гость






Цитата
надо чтоб он не рисовал ничего в сторону центра.
wacko.gif Ты о чем?

Вот так надо, что-ли?


Прикрепленные файлы
Прикрепленный файл  RC.PAS ( 742 байт ) Кол-во скачиваний: 193
 К началу страницы 
+ Ответить 
Anastacia Adesso
сообщение 13.09.2006 18:15
Сообщение #3


Пионер
**

Группа: Пользователи
Сообщений: 92
Пол: Мужской
Реальное имя: Stanislav

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


Volvo, это не совсем то.. но прикольно! good.gif

воть типа.. рисум крест. потом круги но тока в три конца. к основанию креста не надо

Michael_Rybak, да именно тока в три стороны.
Но говорят это и без констант можно сделать.
Не знаешь как?


--------------------
Ben sensiz yaşayamam
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Michael_Rybak
сообщение 13.09.2006 18:32
Сообщение #4


Michael_Rybak
*****

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

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


Цитата(Anastacia Adesso @ 13.09.2006 18:15) *

Но говорят это и без констант можно сделать.
Не знаешь как?


Можно, например, передавать dx и dy. И идти прямо, навлево, и направо.

Например, направление вверх задается парой dx = 0, dy = -1. Повернувшись на 90 градусов по часовой стрелке, мы получим координаты new_dx := -dy, new_dy := dx, а против часовой - new_dx := dy, new_dy := -dx

Код не запускал.

uses crt, graph;
var l, x, y, sk, r:integer;
gr, gm: integer;

procedure ll(x,y,dx,dy,l,r,sk:integer);
begin
line(x, y, x + dx * l, y + dy * l); circle(x + dx * l, y + dy * l, r);
line(x, y, x - dy * l, y + dx * l); circle(x - dy * l, y + dx * l, r);
line(x, y, x + dy * l, y - dx * l); circle(x + dy * l, y - dx * l, r);

if sk>1 then begin
ll(x, y, x + dx * l, y + dy * l, dx, dy, l div 4, r div 4, sk - 1);
ll(x, y, x - dy * l, y + dx * l, -dy, dx, l div 4, r div 4, sk - 1);
ll(x, y, x + dy * l, y - dx * l, dy, -dx, l div 4, r div 4, sk - 1);
end;

end;

begin
clrscr;
readln(l);
x:=300; y:=240; r:=trunc(l/2);
readln(sk);
gr:=9; gm:=2;
initgraph(gr,gm, '');
ll(x,y,1,0,l,r,sk);
ll(x,y,-1,0,l,r,sk);
ll(x,y,0,1,l,r,sk);
ll(x,y,0,-1,l,r,sk);

readkey;
end.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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


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

 



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