Объектно-ориентированное программирование. Лабораторная работа № 2. Вариант №3
Состав работы
|
|
|
|
|
|
|
|
|
|
Необходимые программы
Работа представляет собой zip архив с файлами (распаковать онлайн), которые открываются в программах:
- Microsoft Word
Описание
Лабораторная работа № 2.
Тема: Продолжение темы лаб. работы №1.
Задание:
Сделать защиту полей класса (т.е. работать с полями в основной программе не напрямую, а используя соответствующие методы записи в поле и чтения из поля). Добавить методы движения точек: случайное движение, движение по нажатию клавиш со стрелками.
Рекомендации к выполнению:
Внесите необходимые корректировки в программу лаб. работы №1.
Для работы с полями используйте, например, следующие методы: процедуру инициализации полей Init, функции GetX и GetY для чтения данных из полей x и y, процедуры SetX и SetY для записи данных в поля x и y, а также любые другие методы на Ваше усмотрение.
Приведем пример возможной реализации метода SetX:
Procedure имя класса .SetX(NewX:integer);
begin
x:=NewX;
end;
В программе, если надо, например, присвоить полю x значение 25 то вместо команды x:= 25; запишем вызов метода SetX(25);
Перечисленные методы нам нужны, чтобы не напрямую работать с полем (например, p:=x;), а через соответствующий метод (например, p:=GetX). Возможную реализацию метода инициализации полей Init можно посмотреть в примере 2.4 (§6) конспекта лекций, а методов GetX и GetY – в примере 2.7 (§10).
У метода рисования Draw можно теперь убрать параметры (т.е., например, Mas[i].Draw;). Перед его вызовом добавьте (конечно же, в цикле) инициализацию (при помощи метода Init) всех 100 объектов, сначала задавая параметры метода инициализации с помощью генератора случайных чисел, а затем вызывая метод с данными параметрами. Таким образом, во все 100 объектов, в поля, например, x и y запишутся какие-то случайные числа – координаты точки (цвет точки задайте аналогично).
Далее вызывайте метод рисования для каждого объекта (Mas[i].Draw;). Метод рисования можно сделать с одним параметром для передачи ему цвета (тогда параметр цвета надо убрать из метода инициализации), а в основной программе соответствующий фактический параметр задавать с помощью генератора случайных чисел.
Следующий пункт задания: добавить методы движения точек. Посмотрите описание класса tPoint примере 2.4 (§6) конспекта лекций. Чтобы реализовать случайное движение надо координатам в методе движения Move присваивать случайные значения с помощью генератора случайных чисел. Чтобы реализовать движение по нажатию клавиш со стрелками, надо координаты изменять с шагом h в зависимости от того, на какую стрелку нажал пользователь. Как определить какая клавиша была нажата, и как в зависимости от этого изменять координаты можно посмотреть либо в примере 2.8 (§10), либо в примере 2.7 (§10) конспекта лекций в программе GRAFICA, не вдаваясь в подробности описания классов и другие детали.
Предусмотрите возможность выбора режима движения (посмотрите в примерах 2.8 или 2.7 как выбираются фигуры, а также как пользователь выбирает продолжить программу или нет, и напишите что-то подобное для выбора режима).
Тема: Продолжение темы лаб. работы №1.
Задание:
Сделать защиту полей класса (т.е. работать с полями в основной программе не напрямую, а используя соответствующие методы записи в поле и чтения из поля). Добавить методы движения точек: случайное движение, движение по нажатию клавиш со стрелками.
Рекомендации к выполнению:
Внесите необходимые корректировки в программу лаб. работы №1.
Для работы с полями используйте, например, следующие методы: процедуру инициализации полей Init, функции GetX и GetY для чтения данных из полей x и y, процедуры SetX и SetY для записи данных в поля x и y, а также любые другие методы на Ваше усмотрение.
Приведем пример возможной реализации метода SetX:
Procedure имя класса .SetX(NewX:integer);
begin
x:=NewX;
end;
В программе, если надо, например, присвоить полю x значение 25 то вместо команды x:= 25; запишем вызов метода SetX(25);
Перечисленные методы нам нужны, чтобы не напрямую работать с полем (например, p:=x;), а через соответствующий метод (например, p:=GetX). Возможную реализацию метода инициализации полей Init можно посмотреть в примере 2.4 (§6) конспекта лекций, а методов GetX и GetY – в примере 2.7 (§10).
У метода рисования Draw можно теперь убрать параметры (т.е., например, Mas[i].Draw;). Перед его вызовом добавьте (конечно же, в цикле) инициализацию (при помощи метода Init) всех 100 объектов, сначала задавая параметры метода инициализации с помощью генератора случайных чисел, а затем вызывая метод с данными параметрами. Таким образом, во все 100 объектов, в поля, например, x и y запишутся какие-то случайные числа – координаты точки (цвет точки задайте аналогично).
Далее вызывайте метод рисования для каждого объекта (Mas[i].Draw;). Метод рисования можно сделать с одним параметром для передачи ему цвета (тогда параметр цвета надо убрать из метода инициализации), а в основной программе соответствующий фактический параметр задавать с помощью генератора случайных чисел.
Следующий пункт задания: добавить методы движения точек. Посмотрите описание класса tPoint примере 2.4 (§6) конспекта лекций. Чтобы реализовать случайное движение надо координатам в методе движения Move присваивать случайные значения с помощью генератора случайных чисел. Чтобы реализовать движение по нажатию клавиш со стрелками, надо координаты изменять с шагом h в зависимости от того, на какую стрелку нажал пользователь. Как определить какая клавиша была нажата, и как в зависимости от этого изменять координаты можно посмотреть либо в примере 2.8 (§10), либо в примере 2.7 (§10) конспекта лекций в программе GRAFICA, не вдаваясь в подробности описания классов и другие детали.
Предусмотрите возможность выбора режима движения (посмотрите в примерах 2.8 или 2.7 как выбираются фигуры, а также как пользователь выбирает продолжить программу или нет, и напишите что-то подобное для выбора режима).
Дополнительная информация
Работа сдана в 2014 году, написана самостоятельно, зачет с первого раза
Похожие материалы
Лабораторная работа №2 "Объектно-ориентированное программирование"
Daniil2001
: 20 марта 2022
Лабораторная работа 2 21.02.2022 20.03.2022 Зачет Уважаемый ----, Ситняковская Елена Игоревна
50 руб.
Объектно-ориентированное программирование. Лабораторная работа №2
sibguter
: 5 июня 2018
Тема: Принцип инкапсуляции. Описание класса.
Задание
Сделать защиту полей класса (т.е. работать с полями в основной программе не напрямую, а используя соответствующие методы записи в поле и чтения из поля). Добавить методы движения точек: случайное движение, движение по нажатию клавиш со стрелками.
39 руб.
Объектно-ориентированное программирование. Лабораторная работа №2.
zhekaersh
: 19 марта 2015
Тема: Продолжение темы лаб. работы №1.
Задание:
Сделать защиту полей класса (т.е. работать с полями в основной программе не напрямую, а используя соответствующие методы записи в поле и чтения из поля). Добавить методы движения точек: случайное движение, движение по нажатию клавиш со стрелками.
Рекомендации к выполнению:
Внесите необходимые корректировки в программу лаб. работы №1.
Для работы с полями используйте, например, следующие методы: процедуру инициализации полей Init, функции GetX и Ge
35 руб.
Объектно-ориентированное программирование. Лабораторная работа №2
wchg
: 4 сентября 2013
Задание:
Сделать защиту полей класса
(т.е. работать с полями в основной программе не напрямую, а используя соответствующие методы записи в поле и чтения из поля).
Добавить методы движения точек:
случайное движение, движение по нажатию клавиш со стрелками.
98 руб.
Объектно-ориентированное программирование, Лабораторная работа №2
GTV8
: 10 сентября 2012
Сделать защиту полей класса (т.е. работать с полями в основной программе не напрямую, а используя соответствующие методы записи в поле и чтения из поля). Добавить методы движения точек: случайное движение, движение по нажатию клавиш со стрелками.
150 руб.
Лабораторная работа № 2 по предмету Объектно-ориентированное программирование
svladislav987
: 16 апреля 2021
Тема: Принцип наследования. Статические методы.
Задание:
Создать иерархию графических классов в соответствии с рисунком (или использовать свой вариант). Описания классов желательно оформить в отдельном модуле.
Добавить методы движения фигур (в каждый класс). Использовать статические методы.
Написать программу, позволяющую выбирать фигуру для движения и вид движения: случайный или с помощью стрелок. Подключить к этой программе созданный модуль с описанием графических классов (если
200 руб.
Лабораторная работа №2 по дисциплине: Объектно-ориентированное программирование
vohmin
: 3 июня 2018
Тема: Продолжение темы лаб. работы №1.
Задание:
Сделать защиту полей класса (т.е. работать с полями в основной программе не напрямую, а используя соответствующие методы записи в поле и чтения из поля). Добавить методы движения точек: случайное движение, движение по нажатию клавиш со стрелками.
Рекомендации к выполнению:
Внесите необходимые корректировки в программу лаб. работы №1.
Для работы с полями используйте, например, следующие методы: процедуру инициализации полей Init, функции GetX и Get
50 руб.
Объектно-ориентированное программирование. Лабораторная работа №2. Все варианты.
IT-STUDHELP
: 12 декабря 2016
Лабораторная работа №2
Тема: Продолжение темы лаб. работы №1.
Задание:
Сделать защиту полей класса (т.е. работать с полями в основной программе не напрямую, а используя соответствующие методы записи в поле и чтения из поля). Добавить методы движения точек: случайное движение, движение по нажатию клавиш со стрелками.
18 руб.
Другие работы
Создание автоматизированной системы расчета трудоемкости разработки и сопровождения программных средств
VikkiROY
: 30 сентября 2013
Постановка задачи 4
Обзор требований к автоматизированной системе расчета трудоемкости разработки и сопровождения программных средств 5
Требования к системе в целом 5
Требования к функциям системы 5
Требования к видам обеспечения 5
Требования к документации 6
Алгоритмы работы автоматизированной системы расчета трудоемкости разработки и сопровождения программных средств 7
Описание алгоритма работы модуля “Задание общих параметров договора на разработку ПС” 7
5 руб.
Теплотехника 18.03.01 КубГТУ Задача 2 Вариант 78
Z24
: 23 января 2026
Водяной пар с давлением р1 и степенью сухости х1 из барабана котла-утилизатора поступает в пароперегреватель, где его температура повышается на величину Δt. После пароперегревателя пар подается в турбину, где адиабатно обратимо расширяется до давления p3.
Определить количество теплоты, подведенной к пару в пароперегревателе, работу цикла Ренкина, степень сухости пара в конце процесса расширения в турбине и термический КПД цикла. Определить работу цикла и КПД, если после пароперегревателя пар
200 руб.
Лабораторная работа №5 по дисциплине: ЭВМ и периферийные устройства Тема: "Исследование организации переходов в программе". Вариант №2,12,22 и т.д.
Roma967
: 11 октября 2015
1. ЦЕЛЬ РАБОТЫ
Изучение механизма передачи управления в программе;
получение практических навыков отладки разветвляющихся программ.
№ варианта 2
Заменить:
а) строчные от ‘a’ до ’f’ заглавными
б) все заглавные строчными
Текст программы
Контрольные вопросы
1. Назовите три типа команды безусловного перехода.
2. Какой может быть длина перехода в разных типах команды JMP?
3. Содержимое каких регистров модифицируется при выполнении безусловных переходов разных типов?
4. Какова максимальная д
300 руб.
Лабораторная работа №1 ФОРМИРОВАНИЕ И ОБРАБОТКА ОДНОМЕРНЫХ МАССИВОВ по дисциплине: Информатика. Вариант №4
MasterGammi
: 16 сентября 2025
Лабораторная работа 1
Цель работы: Приобретение навыков разработки алгоритмов формирования и обработки одномерного массива. Закрепление понятий базовых структур цикл, разветвление.
Подготовка к лабораторной работе
1. Повторить вопросы организации циклических алгоритмов.
2. Повторить следующие вопросы и понятия :
• массивы данных (размерность массива, обращение к элементу массива, расположение элементов массива в памяти ПК);
• правила работы с массивами данных на языке программиро
99 руб.