Лабораторная работа № 1 По дисциплине: Объектно-ориентированное программирование Вариант 4

Состав работы

material.view.file_icon
material.view.file_icon
material.view.file_icon EGAVGA.BGI
material.view.file_icon LABR1.EXE
material.view.file_icon LABR1.PAS
material.view.file_icon Задание.doc
material.view.file_icon Программа.doc

Необходимые программы

Работа представляет собой zip архив с файлами (распаковать онлайн), которые открываются в программах:
  • Microsoft Word

Описание

Лабораторная работа №1

Тема: Принцип инкапсуляции. Описание класса.

Задание:
Часть 1. Описать класс tPoint, инкапсулирующий основные свойства и методы точки на плоскости. При написании программы на С++ или С# инициализировать поля с помощью конструктора (объявить два конструктора: по умолчанию и с параметрами). Создать массив из 100 точек. Нарисовать точки случайным образом случайным цветом на экране.
Часть 2. Сделать защиту полей класса (т.е. работать с полями в основной программе не напрямую, а используя соответствующие методы записи в поле и чтения из поля). Добавить методы движения точек: случайное движение, движение по нажатию клавиш со стрелками.

Рекомендации к выполнению части 1:
Продумайте, какие характеристики есть у объекта Точка, и какие действия можно над ним проделывать. Затем опишите класс tPoint, включив соответствующие поля и методы. Далее продумайте и запишите код каждого метода.
После окончания всех описаний можно переходить к написанию кода основной программы.
Задайте одномерный массив из 100 элементов типа tPoint, т.е. у Вас будет 100 объектов класса tPoint. Далее в цикле (используйте любой известный Вам циклический оператор ) вызывайте метод рисования для каждого объекта. Данный метод можно сделать с тремя параметрами для передачи ему координат и цвета, а в основной программе соответствующие фактические параметры задавать с помощью генератора случайных чисел. Пусть, например, имя массива – Mas, а имя метода рисования Draw. Тогда можно записать: Mas[i].Draw(x,y,color); , где Mas[i] - объект класса tPoint (значения x,y,color предварительно задавать с помощью генератора случайных чисел).
В результате, после запуска программы на выполнение на экране появится 100 точек в случайном месте случайного цвета.


Рекомендации к выполнению части 2 на Паскале:
Для работы с полями используйте, например, следующие методы: процедуру инициализации полей Init, функции GetX и GetY для чтения данных из полей x и y, процедуры SetX и SetY для записи данных в поля x и y, а также любые другие методы на Ваше усмотрение.
 Приведем пример возможной реализации метода SetX:


Procedure имя класса.SetX(NewX:integer);
 begin
  x:=NewX;
 end;

В программе, если надо, например, присвоить полю x значение 25, то вместо команды присваивания x:=25 запишем вызов метода SetX(25);
Перечисленные методы нам нужны, чтобы не напрямую работать с полем, а через соответствующий метод. Возможную реализацию метода инициализации полей 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 как выбираются фигуры, а также как пользователь выбирает продолжить программу или нет, и напишите что-то подобное для выбора режима).

Рекомендации к выполнению части 2 на C++:
Для работы с полями используйте, например, следующие методы: процедуру инициализации полей Init, функции GetX и GetY для чтения данных из полей x и y, процедуры SetX и SetY для записи данных в поля x и y, а также любые другие методы на Ваше усмотрение.
 Приведем пример возможной реализации метода SetX:


void имя класса::SetX(int NewX);
 {
  x=NewX;
 }

В программе, если надо, например, присвоить полю x значение 25 то вместо команды присваивания запишем вызов метода SetX(25);
Перечисленные методы нам нужны, чтобы не напрямую работать с полем, а через соответствующий метод. Инициализацию полей осуществлять с помощью конструкторов (по умолчанию и с параметрами).
 Далее вызывайте метод рисования для каждого объекта (Mas[i].Draw;). Метод рисования можно сделать с одним параметром для передачи ему цвета (тогда параметр цвета надо убрать из метода инициализации), а в основной программе соответствующий фактический параметр задавать с помощью генератора случайных чисел.
 Следующий пункт задания: добавить методы движения точек. Чтобы реализовать случайное движение надо координатам в методе движения Move присваивать случайные значения с помощью генератора случайных чисел. Чтобы реализовать движение по нажатию клавиш со стрелками, надо координаты изменять с шагом h в зависимости от того, на какую стрелку нажал пользователь. Предусмотрите возможность выбора режима движения.
Лабораторная работа №1 по дисциплине: Объектно-ориентированное программирование
Тема: Принцип инкапсуляции. Описание класса. Задание: Описать класс tPoint, инкапсулирующий основные свойства и методы точки на плоскости. Создать массив из 100 точек. Нарисовать точки случайным образом случайным цветом на экране. Рекомендации к выполнению: Продумайте, какие характеристики есть у объекта Точка, и какие действия можно над ним проделывать. Затем опишите класс tPoint, включив соответствующие поля и методы. Далее продумайте и запишите код каждого метода.
User vohmin : 3 июня 2018
50 руб.
Лабораторная работа № 1 По дисциплине: Объектно-ориентированное программирование
Тема: Принцип инкапсуляции. Описание класса. Задание: Описать класс tPoint, инкапсулирующий основные свойства и методы точки на плоскости. Создать массив из 100 точек. Нарисовать точки случайным образом случайным цветом на экране.
User Loviska : 26 января 2015
100 руб.
Лабораторная работа №1 по дисциплине: «Объектно-ориентированное программирование». Все варианты
Задание: Описать класс tPoint, инкапсулирующий основные свойства и методы точки на плоскости. Создать массив из 100 точек. Нарисовать точки случайным образом случайным цветом на экране. Рекомендации к выполнению: Продумайте, какие характеристики есть у объекта Точка, и какие действия можно над ним проделывать. Затем опишите класс tPoint, включив соответствующие поля и методы. Далее продумайте и запишите код каждого метода. После окончания всех описаний можно переходить к написанию кода осн
User Roma967 : 21 марта 2015
300 руб.
promo
Лабораторная работа №1 по дисциплине: Объектно-ориентированное программирование. Вариант №7
Лабораторная работа №1 Тема: Принцип инкапсуляции. Описание класса. Задание: Описать класс tPoint, инкапсулирующий основные свойства и методы точки на плоскости. Создать массив из 100 точек. Нарисовать точки случайным образом случайным цветом на экране. Рекомендации к выполнению: Продумайте, какие характеристики есть у объекта Точка, и какие действия можно над ним проделывать. Затем опишите класс tPoint, включив соответствующие поля и методы. Далее продумайте и запишите код каждого метода. Посл
User kiana : 27 октября 2014
50 руб.
Лабораторная работа №1 по дисциплине: Объектно-ориентированное программирование. Вариант №02
Тема: Принцип инкапсуляции. Описание класса. Задание: Описать класс tPoint, инкапсулирующий основные свойства и методы точки на плоскости. Создать массив из 100 точек. Нарисовать точки случайным образом случайным цветом на экране.
User Jack : 4 сентября 2014
100 руб.
Лабораторная работа №1-5 по дисциплине "Объектно-ориентированное программирование"
1.Описать класс tPoint, инкапсулирующий основные свойства и методы точки на плоскости. Создать массив из 100 точек. Нарисовать точки случайным образом случайным цветом на экране. 2.Сделать защиту полей класса (т.е. работать с полями в основной программе не напрямую, а используя соответствующие методы записи в поле и чтения из поля). Добавить методы движения точек: случайное движение, движение по нажатию клавиш со стрелками. ...
User kanchert : 17 мая 2015
Объектно-ориентированное программирование
«Работа со стандартной библиотекой шаблонов». На языке С++ реализовать класс, описывающий товар на складе, содержащий поля: наименование, артикул, дата поступления на склад, количество товара, цена за единицу товара. Реализовать класс контейнер - вектор, содержащий объекты класса «Товар». Отсортировать контейнер. С использованием алгоритма двоичного поиска, провести поиск в контейнере по артикулу, названию, и дате поступления. При поиске осуществлять запись найденных объектов в контейнер-список
User studypro3 : 6 августа 2018
400 руб.
Теплотехника КемТИПП 2014 Задача А-6 Вариант 84
Для сушки используют воздух с температурой t1 и с заданной относительной влажностью φ1. В калорифере его подогревают до температуры t2 и направляют в сушилку, откуда он выходит с температурой t3. Определить: 1) основные параметры влажного воздуха (tм, φ, d, h, pп) для основных точек процессов; 2) расход воздуха M и теплоты q на 1 кг испаренной влаги. Изобразить процесс в h,d — диаграмме. Данные для решения приведены в таблице 17. Результаты расчетов свести в таблицу 18.
User Z24 : 16 февраля 2026
200 руб.
Теплотехника КемТИПП 2014 Задача А-6 Вариант 84
Цифровая обработка сигналов. Вариант №13.
Задача 1. Прохождение дискретного непериодического сигнала через нерекурсивную дискретную цепь. На вход дискретной цепи подается непериодический сигнал . 1.1 Построить график дискретного сигнала. 1.2 Рассчитать спектр ДС с шагом . Построить амплитудный спектр. 1.3 Построить дискретную цепь. Записать ее передаточную функцию, определить импульсную характеристику цепи. 1.4 Определить сигнал на выходе цепи по формуле линейной свертки Построить график выходного сигнала. 1.5 Рассчитать спектр
User teacher-sib : 17 сентября 2021
600 руб.
promo
Выбор и расчет усилителя
Аннотация Введение 1. Выбор структуры усилителя 2. Принцип действия усилителя 3. Задание на курсовое проектирование. 4. Выходной каскад усилителя. 5. Эмиттерный повторитель напряжения. 6. Расчет второго каскада предварительного усиления. 7. Расчет первого каскада предварительного усиления. Заключение. Список литературы. Аннотация В данной курсовой работе поэтапно рассматривается пример проектирования многокаскадного усилителя на БПТ. Производится расчет входно
User OstVER : 13 ноября 2012
5 руб.
Проект автоматизации линии упаковки гипсокартона
Содержание Введение Глава 1. Технология работы линии упаковки ГКЛ Глава 2. Структура системы управления упаковки Глава 3. Устройство и принцип работы системы управления упаковкой Глава 4. Электроснабжение Линии упаковки Глава 5. Техника безопасности при монтаже систем автоматики Глава 6. Экономическая целесообразность Список литературы
User Рики-Тики-Та : 7 марта 2012
55 руб.
up Наверх