![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
Гersh |
![]()
Сообщение
#1
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 31 Пол: Мужской Реальное имя: Игорь Репутация: ![]() ![]() ![]() |
Задача 229. Смоделируйте движение n случайно расположенных на плоскости жучков (точек – Авт.), каждый из которых с постоянной скоростью, ползет к жучку со следующим номером (n-й ползет к первому). При расстоянии между жучками меньшем некоторого критического преследуемый жучок считается съеденным и исчезает с экрана.
Я ее сделал, но оказалось, что жучки не должны ползти c постоянной скоростью, а должны догонять друг друга с постоянной скоросью. То есть каждый ход расстояние между двумя любыми жучками должно сокращаться. Это, очевидно, делается через задание направления и приращения скорости, но я не понял КАК это делать. Помогите кто-нибудь. Прилагается моя версия программы и мой модуль. ЗЫ. Кто хочет поприкалываться можно запускать программу в данной версии исключив процедуру Go и/или убрать очисту экрана. Получается сприкольно! ;) (Особенно если подключить драйвер BGI256) Прикрепленные файлы ![]() ![]() |
![]() ![]() |
Lapp |
![]()
Сообщение
#2
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
Гersh, ты не совсем ясно выразился по поводу скорости (то она постоянна, то не постоянна, но все же постоянна..). Скорость - чисто физическое понятие, и с ним не должно быть путаницы. В твоем коде понятие скорости вообще отсутствует. Просто происходит смещение либо на 1 по х, либо на 1 по у, либо сразу по обеим осям. Я рекомендую тебе подойти к этому вопросу, как полагается.
1. Обозначь границы поля в абстрактных координатах: скажем, от 0 до 1 по х и от 0 до 0.75 по у. 2. Напиши функцию перевода абстрактных координат в реальные экранные. 3. Все расчеты производи в этих абстрактных координатах, а перед выводом объекта на экран производи перевод с помощью той функции. Если все будет написано так (и только в этом случае), понятие скорости и все остальное реализуется естественным образом. В настоящем же виде программа не годится для выполнения условий задачи. -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
![]() ![]() |
![]() |
Текстовая версия | 8.09.2025 9:55 |