Міністерство освіти і науки, молоді та спорту України
ДЕРЖАВНИЙ ВИЩИЙ НАВЧАЛЬНИЙ ЗАКЛАД
«НАЦІОНАЛЬНИЙ ГІРНИЧИЙ УНІВЕРСИТЕТ»
ІНСТИТУТ ЕЛЕКТРОЕНЕРГЕТИКИ
ФАКУЛЬТЕТ ІНФОРМАЦІЙНИХ ТЕХНОЛОГІЙ
Кафедра програмного забезпечення комп'ютерних систем
КУРСОВОЙ ПРОЕКТ
по курсу “Объектно-ориентированное программирование”
Вариант №11
Выполнила:
|
ст. гр. ПИит-10-1 Соколик Е.А.
|
Проверил: |
ст. пр. Шмаков Ю.Д.
|
Днепропетровск
2012
Содержание
Содержание _____________________________________________________ 2
Задание _________________________________________________________3
Выполнение _____________________________________________________4
Предметная область ________________________________________4
Диаграмма классов _________________________________________4
Описание классов __________________________________________5
Листинг файла Basketball.pas ________________________________ 6
Листинг файла Unit1.pas ____________________________________11
Результаты работы приложения ______________________________ 16
Выводы __________________________________________________ 17
Список литературы_______________________________________________ 18
Вариант 11
Разработать программу, имитирующую бросок мяча игроком в баскетбольное кольцо. Мяч можно рассматривать как тело, брошенное под углом , к горизонту со скоростью .
При этом на тело действует сила притяжения, в случае чего вертикальная координата тела увеличивается до определенного значения, а потом начинает уменьшаться. Если пренебречь сопротивлением воздуха, то координаты тела в момент времени t определяются по формулам:
x(t)=tcos
y(t)=tsingt2/2.
Игрока, мяч и кольцо изобразить стилизированными символами (по усмотрению программиста). Программа должна запрашивать рост игрока. Положение игрока на поле должно управлятся клавишами и ,а величина угла клавишамита . Величина скорости задается с клавиатуры, но при помощи датчика случайных чисел может при каждом броске менятся в пределах 20% от заданного значения. В случае попадания мяча в щит имитировать отскок мяча.
Выполнение
Предметная область:
В качестве предметной области выступает игра в баскетбол. Необходимо разработать приложение, позволяющее имитировать бросок мяча игроком в баскетбольное кольцо. Цель игры – попасть в кольцо. Программа содержит такой набор графических элементов: игрок, мяч, кольцо, щит.
Диаграмма классов:
Для создания диаграмм классов использовался редактор Model Maker 6.20.
Рис.1. Диаграмма классов.
Описание классов:
TObject – класс-предок для всех классов. Содержит конструктор Create и деструктор Destroy.
TGElement - класс - графический элемент. Наследуется от TObject. Содержит три атрибута: Canvas –канва, на которой будут рисоваться элементы, x и y – координаты элемента на канве. В конструктор Create в качестве параметра передается канва, на которой будет отображаться элемент. Метод Draw – рисование элемента на канве, метод Erase – «стирание» элемента (прорисовка цветом фона), метод MoveTo – перемещение элемента по канве, в качестве параметров передаются новые координаты x и y.
TPlayer - класс-игрок. Наследуется от TGElement. Содержит 1атрибут: Height - высота игрока (рост). Имеет собственный конструктор , методы – SetHeight – установить высоту, а также переопределенные методы Draw и Erase.
TBall – класс-мяч. Наследуется от TGElement. Имеет собственный конструктор , а также переопределенные методы Draw и Erase.
TBasket – класс-корзина. Наследуется от TGElement. Имеет собственный конструктор , а также переопределенные методы Draw и Erase.
TBoard - класс - щит. Наследуется от TGElement. Имеет собственный конструктор , а также переопределенные методы Draw и Erase.