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

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

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

 
 Ответить  Открыть новую тему 
> Задача "машинные узоры"
сообщение
Сообщение #1


Новичок
*

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

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


Интерессная задача о машинных узорах, нашел в книге, а с реализацией на Паскале возникли проблемы, если у кого-то есть интерес к этой задаче поделитесь своими соображениями.
Собственно условие:
"Создать систему, которая реализует разнообразные машинные узоры, которые используются в качестве заставок на базе элементов построенных таким образом:
1) опрос типа многоугольника у пользователя : треугольник, квадрат, ромб, пятиугольник и т.д.
2) опрос размера стороны: p
3) опрос коэфициента 0<A<1, с помощью которого стороны фигуры будут разделяться точкой: p*A
4) Вычислить точку каждой из сторон многоугольника и соединить полученные точки отрезками
5) Повторить рекурсивно п.4 столько раз, сколько разрешает экран."

Книга в которой я это "надыбал" Ю.В. Котов "Как рисует машина". Наука, 1988 г.

Как видно задача комплексная, буду рад увидеть любые предложения и подсказки по ее решению и реализации.
Заранее спасибо.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Ищущий истину
******

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

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


Цитата
3) опрос коэфициента 0<A<1, с помощью которого стороны фигуры будут разделяться точкой: p*A

неясно что имеется ввиду...

и еще... все фигуры, выведенные на экран одинаковы?
Должны ли они быть расположенны вплотную друг к другу?
Это те вопросы, на которые надо ответить перед началом процесса алгоритмизации...


--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Гость






arsen86

Если я правильно понял, то должно получиться что-то типа вот этого ?


Эскизы прикрепленных изображений
Прикрепленное изображение
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Ищущий истину
******

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

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


Хм, кстати на рисунке volvo, наблюдается "обман зрения"...
если смотреть в центр, то кажется, что внешние квадрат имеет не паралельные грани относительно окна браузера...
smile.gif


--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Новичок
*

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

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


Относительно п.3
так он описан в задачи, я понимаю, что координаты точки определяются концом отрезка длинной p*A, который нужно откладывать от определенного начала стороны, начало наверное можно выбрать произвольно

Фигуры, как я понял, предлагаются на выбор, то есть одновременно на экране отображается только 1 фигура, с определенной длинной стороны, длинна, в свою очередь, должна задаватся отдельно для каждой фигуры.

volvo
ты правильно понял, во всяком случае я понял тоже самое :)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Бывалый
***

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

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


Я тоже все так понял smile.gif тока
Цитата
Повторить рекурсивно п.4 столько раз, сколько разрешает экран."

Т.е. надо много выводить фигурок одна в одной, пока не будет вырождение в точку, а такое обязательно когда-нибудь наступит, т.к. площадь каждой следующей фигуры меньше предыдущей.

Только надо писать без рекурсии (какая противная вещь) т.к. при A скажем 0.9999 будет глюк smile.gif, а так ничего сложного - координаты по нач. точек легко вычислются, при некотором знании тригонометрии. Далее можно легко находить координаты точек каждой следующей фигурки, для этого нам потребуется знание уравнения прямой... считать разности координат, пока они не станут меньше 0.5 (вырождение) тоже не составляет проблем.....

Может найдется герой, который напишет для этого всего програмку smile.gif

Программа написана и добавлена в FAQ: Занимательная графика


--------------------
In byte we trust
ICQ World.ru
mail[dog]digitalator[dot]com
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Бывалый
***

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

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


volvo - Вы ГЕРОЙ!

написать такую програмку, пусть несложную, но кода-то не десять строк smile.gif.. да еще и за просто так, да еще и незнакомоу челу - это Геройство smile.gif Мне его всегда нехватало - идею решения подсказать всегда могу, а вот писать полностью прогу... :no:

Сообщение отредактировано: Digitalator -


--------------------
In byte we trust
ICQ World.ru
mail[dog]digitalator[dot]com
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Новичок
*

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

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


Я мягко говоря в шоке !
Спасибо ОГРОМНОЕ.
Даже не ожидал на такое чудо, только спросил, а уже работающая программа, вот только одна проблемма - я с обьектами почти не работал.

to volvo
а как ты ее собираешся расширять ?

еще раз ОГРОМНОЕ СПАСИБО.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Гость






Цитата
а как ты ее собираешся расширять ?
:o

Можно попробовать одновременно работать с несколькими типами фигур, добавить интерфейс (кстати, граф. интерфейс я делал лет 5 назад, нужно его только добавить...), перейти в 3D наконец... rolleyes.gif Посмотрим.

Цитата
я с обьектами почти не работал


Когда-то же нужно начинать !!! ;)
Кстати, очень мощное средство.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10


Новичок
*

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

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


думаю, что в 3D немного потеряется наглядность и красота

а вот интерфейс не помешает, но это дело техники и вкуса

а за чем тогда обьекты ?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #11


Гость






arsen86

Попробуй сделать это все без ООП... И я посмотрю, у кого получится проще и чья программа будет более расширяемой. ;)
 К началу страницы 
+ Ответить 
сообщение
Сообщение #12


Бывалый
***

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

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


Я думаю volvo надо повысить рейтинг за активную помощь!!! :yes:


--------------------
Хочу в репу !

Cмотри,а то ведь получишь!
Админ.

Не получит - его фиг догонишь!
Админ №2.

P.S Вы еще третьего админа притащите сюда :D
ваш аффтар :D
Звали? :D (админ № не помню какой)

ха больше нифига не напишете
афтар

Уверен? (Moderator)
А еще можно ? (супмодер)
Хватит его мучать ! Избили уж... (админ)
Не хватит. я тоже напишу (тоже Админ)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #13


Новичок
*

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

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


to volvo

я не спорю, что твоя программа будет более расширяемая, но эта программа, как бы это сказать.... "без будущего", наврядли кто-то будет ее расширять, дополнять, она -- просто интересна в своей наглядности и "бессмыслености" smile.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #14


Гость






Это ты напрасно ... А для обучающих целей (например, для форума... да и братишка у меня программированием занитересовался... )?

Да и просто для того, чтобы создать законченный проект ...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #15


Бывалый
***

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

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


мдаа <_<


--------------------
Хочу в репу !

Cмотри,а то ведь получишь!
Админ.

Не получит - его фиг догонишь!
Админ №2.

P.S Вы еще третьего админа притащите сюда :D
ваш аффтар :D
Звали? :D (админ № не помню какой)

ха больше нифига не напишете
афтар

Уверен? (Moderator)
А еще можно ? (супмодер)
Хватит его мучать ! Избили уж... (админ)
Не хватит. я тоже напишу (тоже Админ)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #16


Новичок
*

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

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


Ну что ж, сколько программистов, столько и программ.

Может быть ты и прав :yes:

В любом случае спасибо, ты мне очень помог :p4:
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #17


Ищущий истину
******

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

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


volvo действительно герой!
Цитата
Мне его всегда нехватало - идею решения подсказать всегда могу, а вот писать полностью прогу... 


точно! :D


--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #18


Бывалый
***

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

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


Цитата
Мне его всегда нехватало - идею решения подсказать всегда могу, а вот писать полностью прогу...

Я думаю volvo надо повысить рейтинг за активную помощь!!! :yes:
уже повысил :yes:

Сообщение отредактировано: GoodWind -


--------------------
Хочу в репу !

Cмотри,а то ведь получишь!
Админ.

Не получит - его фиг догонишь!
Админ №2.

P.S Вы еще третьего админа притащите сюда :D
ваш аффтар :D
Звали? :D (админ № не помню какой)

ха больше нифига не напишете
афтар

Уверен? (Moderator)
А еще можно ? (супмодер)
Хватит его мучать ! Избили уж... (админ)
Не хватит. я тоже напишу (тоже Админ)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 





- Текстовая версия 1.09.2025 20:19
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name