![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
gach |
![]()
Сообщение
#1
|
Группа: Пользователи Сообщений: 5 Пол: Мужской Реальное имя: Саня Репутация: ![]() ![]() ![]() |
Создать библиотеку объектных типов, которая должна содержать, как минимум, описания одного родительского типа и двух дочерних. Прообразом создаваемых объектов должен послужить движущийся графический объект. Объекты должны отличаться методами движения: один должен уметь двигаться по экрану случайным образом, другой – под управлением соответствующих клавиш в восьми возможных направлениях (вертикальных, горизонтальных, диагональных). Разработать программу – объектно-ориентированное приложение, в котором должно быть организовано движение по экрану, как минимум, двух экземпляров динамических объектов:
Первого – случайным образом, второго – под управлением соответствующих клавиш. Может у кого есть такой пример или подобный? Очень надо. Помогите плиз!!! |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Вот тебе набросок... Управление (по диагонали доделаешь сам, по аналогии) - с цифровой клавиатуры в режиме NumLock, клавиши 2, 4, 6, 8...
Красный объект - управляемый, белые - случайно перемещающиеся. Пока программа рассчитана на любое количество случайных объектов, и один управляемый. gach, вопрос на засыпку: почему, и можно ли этого избежать? ![]() "Ну-с... Пора внести разнообразие в отдых..." (С) Особенности национальной рыбалки. Первый, кто предложит работающее решение (естественно, в стиле ООП), при котором будет возможно в приведеную мной программу добавить больше одного управляемого объекта, получает +1 в рейтинг... ![]() Прикрепленные файлы ![]() |
gach |
![]()
Сообщение
#3
|
Группа: Пользователи Сообщений: 5 Пол: Мужской Реальное имя: Саня Репутация: ![]() ![]() ![]() |
Цитата(volvo @ 9.05.2006 19:28) Вот тебе набросок... Окей. Сейчас посмотрим. |
gach |
![]()
Сообщение
#4
|
Группа: Пользователи Сообщений: 5 Пол: Мужской Реальное имя: Саня Репутация: ![]() ![]() ![]() |
Оооо. ТО что надо!!!! Спасибо огромное! Теперь буду разбираться!!!! вот это спец!!!! Мой глубокий поклон!!!
|
gach |
![]()
Сообщение
#5
|
Группа: Пользователи Сообщений: 5 Пол: Мужской Реальное имя: Саня Репутация: ![]() ![]() ![]() |
Вот вопросик возник.
procedure TObj.recalc; Что эта процедура делает? Что такое Inc(X, DX); Inc(Y, DY);? И еще вопрос. procedure TObj.show(is_active: boolean); Что такое is_active и почему оно boolean? И еще вопрос. constructor TRandomObj.Init; Что такое Tick? почему он нулю равен?? Сообщение отредактировано: volvo - 3.11.2006 22:30 |
volvo |
![]()
Сообщение
#6
|
Гость ![]() |
Значит, так... Первый вопрос:
насчет "что делает" - это попытайся разобраться сам. Что такое Inc(X, DX); Inc(Y, DY);- это то же самое, что X := X + DX; Y := Y + DY; Второе. Посмотри на вызов процедуры Show, и тебе все станет понятно. Show(False) скрывает объект, Show(True) показывает его... Почему Boolean? А мне не нужно больше 2-х состояний, объект может быть только видим/невидим... Третьего не дано. А у какого еще встроенного типа есть только 2 состояния? Третье. Constructor тебе ничего не говорит? Зачем вообще конструкторы используются, в курсе? Насчет "что такое Tick" - а ты найди место, где с этой переменной что-то делается, и посмотри ЧТО именно, тогда все поймешь... |
gach |
![]()
Сообщение
#7
|
Группа: Пользователи Сообщений: 5 Пол: Мужской Реальное имя: Саня Репутация: ![]() ![]() ![]() |
Значит я правильно понял что процедура procedure TObj.recalc изменяет начальные координаты? ТО есть отвечает за движение? Или я что-то напутал?
|
![]() ![]() |
![]() |
Текстовая версия | 18.06.2025 14:36 |