42022

Использование классов на примере работы с простыми геометрическими фигурами

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

Математика и математический анализ

Варианты заданий Треугольник задаваемый координатами вершин. Прямоугольник задаваемый координатами своих левойверхней и правойнижней вершин стороны параллельны осям. Треугольник задаваемый координатами вершин. Прямоугольник задаваемый длинами своих диагоналей и координатами центра стороны параллельны осям.

Русский

2013-10-27

40.5 KB

8 чел.

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

Тема: использование классов на примере работы с простыми геометрическими фигурами.

Цель работы: разработка простейшего класса с несложными полями и методами для работы с простыми геометрическими фигурами.

Порядок выполнения работы

1. Разработать класс, реализующий представление производной фигуры, как цельного объекта.

Продумать необходимый набор полей, полностью описывающий объект, т.е. параметров, задающих фигуру в общем виде. При этом учитывать возможность смещения фигуры относительно центра координат, а возможность поворота (наклона) можно игнорировать.

Снабдить класс следующими обязательными функциями-членами:

  •  конструктор с полным набором параметров, описывающих объект;
  •  функция вывода значений параметров, задающих фигуру;
  •  функция, возвращающая 1 (истина), если указанная точка принадлежит границе фигуры, и 0 (ложь) в противном случае (координаты точки передаются как параметры);
  •  функция, возвращающая 1, если объект пересекает ось абсцисс, и        0 (ложь) в противном случае;
  •  функция, возвращающая 1, если объект пересекает ось ординат, и      0 (ложь) в противном случае.

При необходимости добавить внутренние (приватные) функции.

В функции main организовать ввод конкретных параметров объекта с клавиатуры, создание объекта (экземпляра класса), тестирование всех методов с выдачей соответствующих сообщений.

Организовать исходный текст в виде трех исходных файлов:

  •  заголовочный с описанием класса (*.h)
  •  с реализацией методов (функций-членов) класса (*.cpp)
  •  с функцией main (*.cpp).

Для тестирования необходимо подготовить тестовые данные с заранее известными правильными результатами.

Реализовать меню в текстовом режиме для проверки функций:

  •  создания объекта
  •  проверки принадлежности точки границе фигуры (с допуском 0.005)
  •  проверки факта пересечения оси абсцисс
  •  проверки факта пересечения оси ординат

В случае реализации внутренних (приватных) функций в их описании реализовать вывод на экран сообщения о вызове этих функций.

Варианты заданий

  1.  Треугольник, задаваемый координатами вершин. Обязательны функции подсчета площади треугольника и величины внутренних углов.
  2.  Прямоугольник, задаваемый координатами своих левой-верхней и правой-нижней вершин (стороны параллельны осям). Обязательны функции подсчета его площади и координат двух других вершин.
  3.  Треугольник, задаваемый координатами вершин. Обязательны функции подсчета периметра треугольника и величины внешних углов.
  4.  Прямоугольник, задаваемый длинами своих диагоналей и координатами центра (стороны параллельны осям). Обязательны функции подсчета его площади и координат сторон.
  5.  Ромб, задаваемый координатами трех своих вершин. Обязательны функции подсчета его площади и координаты четвертой стороны.
  6.  Окружность, задаваемая координатами центра окружности и радиусом. Обязательны функции подсчета длины окружности и площади круга внутри нее.
  7.  Прямоугольник, задаваемый длинами своих сторон и координатами центра (стороны параллельны осям). Обязательны функции подсчета его периметра и координат вершин.
  8.  Ромб, задаваемый длинами своих сторон и координатами центра. (диагонали параллельны осям). Обязательны функции подсчета его периметра и координат сторон.
  9.  Квадрат, задаваемый координатами (целыми) своих вершин (вершины могут следовать в любом порядке). Обязательна функция проверки, действительно ли координатами задан квадрат (например, с такими данными: 0,0; 1,1; 1,0; 0,1).
  10.  Прямоугольник, задаваемый длинами своих сторон и координатами центра (стороны образуют угол в 45 с осями). Обязательны функции подсчета его периметра и координат вершин.
  11.  Вектор в трехмерном евклидовом пространстве задан своими полярными координатами. Обязательна функция-член класса, которая возвращает рабочий вектор в декартовых координатах. Другие функции можно ввести по желанию.
  12.  Треугольник, задаваемый координатами двух вершин одной стороны, длиной второй стороны и величиной угла между ними. Обязательны функции: 1)подсчета координат третьей вершины, 2)возвращающая длины сторон.
  13.  Трапеция, задаваемая координатами (целыми) своих вершин (вершины могут следовать в любом порядке). Обязательна функция определения вида трапеции: общего вида, равнобокой, прямоугольной.
  14.  Отрезок, задаваемый координатами своих концов. Обязательные функции-члены класса: нахождение координат середины отрезка; подсчета новых координат концов отрезка после поворота относительно своего центра на заданный угол.
  15.  Прямоугольник, задаваемый длинами своих диагоналей, углом между ними и координатами центра (одна из диагоналей параллельна оси Х). Обязательны функции подсчета его периметра и координат вершин.
  16.  Ломаная, состоящая из трех отрезков, задаваемая координатами своих вершин. Обязательные функции-члены класса: нахождение координат центра масс; подсчета новых координат вершин ломаной после поворота относительно своего центра на заданный угол.
  17.  Трапеция, задаваемая координатами (целыми) своих вершин (вершины могут следовать в любом порядке). Обязательна функция проверки, действительно ли координатами задана трапеция (например, с такими данными: 0,0; 1,2; 5,0; 3,2).
  18.  Прямоугольник, задаваемый координатами трех своих вершин. Обязательны функции подсчета его периметра и координаты четвертой вершины.
  19.  Треугольник, задаваемый координатами двух вершин одной стороны, величиной двух прилежащих углов. Обязательны функции: 1)подсчета координат третьей вершины, 2)возвращающая длины сторон.
  20.  Правильный пятиугольник, задаваемый координатами центра, координатой одной из вершин и радиусом окружности, описанной вокруг него. Обязательна функция подсчета координат его остальных вершин и площади.


 

А также другие работы, которые могут Вас заинтересовать

17537. ДОСЛІДЖЕННЯ ВКАЗІВНИКІВ ТА ДИНАМІЧНОЇ ПАМ’ЯТІ в С++ 85 KB
  ЛАБОРАТОРНА РОБОТА № 6 ДОСЛІДЖЕННЯ ВКАЗІВНИКІВ ТА ДИНАМІЧНОЇ ПАМЯТІ Мета роботи дослідити механізми створення та використання вказівників та механізми роботи з динамічною памяттю. Завдання Вивчити поняття вказівників та методи виділення динамічної п...
17538. Дослідження багатовимірних масивів на С++ 184 KB
  ЛАБОРАТОРНА РОБОТА № 7 Дослідження багатовимірних масивів на С. Мета лабораторної роботи ознайомитися з основними принципами роботи з багатовимірними масивами. Теоретичні положення Багатовимірний масив це масив який має дві чи більше розмірност
17539. Робота з рядками символів. Обробка масивів на С++ 71.5 KB
  Основи програмування та алгоритмічні мови Лабораторна робота №8 Лабораторна робота №8 Робота з рядками символів. Обробка масивів Мета роботи вивчити особливості опису і використання символьних маси...
17540. Системи числення (позиційні, непозиційні) 1.16 MB
  Лабораторна робота №1 Тема: Системи числення позиційні непозиційні. Мета: Виконати переведення чисел між різними системами числення та основні алгебраїчні операції між числами двійкової системи. Теоретичні відомості Сукупність прийомів та правил найменування й...
17541. Побудова схем за допомогою програми Electronics Workbench (EWB) та створення таблиць істинності в табличному процесорі Microsoft Excel 161 KB
  Лабораторна робота №2 Тема: побудова схем за допомогою програми Electronics Workbench EWB та створення таблиць істинності в табличному процесорі Microsoft Excel. Мета: використовуючи логічні функції табличного процесора Microsoft Excel створити таблиці істинності функцій заданих аналіт...
17542. Основні аксіоми та закони алгебри логіки 85 KB
  Лабораторна робота №3 Тема: основні аксіоми та закони алгебри логіки. Мета:довести аналітичним способом та методом повного перебору логічні функції за допомогою основних аксіом та законів алгебри логіки. Варіант 13 Теоретичні відомості Логічна функція це склад...
17543. Основні теореми підстановок та розкладання алгебри логіки 301.5 KB
  Лабораторна робота №4 Тема: основні теореми підстановок та розкладання алгебри логіки. Мета: вирішити задачі за допомогою теорем підстановок та розкладання. Варіант 13 Теоретичні відомості При побудові складних логічних схем із логічних елементів використовую
17544. Представлення перемикаючих функцій у канонічних формах 86.5 KB
  Лабораторна робота №5 Тема: представлення перемикаючих функцій у канонічних формах. Мета: перевести довільну булеву функцію у канонічні форми: ДДНФ ДНФДКНФ КНФ. Варіант 13 Теоретичні відомості: Дизюнкція конституент одиниці рівних одиниці на тих наборах що ...
17545. Скорочені нормальні форми. Мінімізація булевих функцій задопомогою імплікатних матриць 276.5 KB
  Лабораторна робота №5 Тема: скорочені нормальні форми. Мінімізація булевих функцій задопомогою імплікатних матриць. Мета: виконати мінімізацію перемикаючих функцій методом імплікантних матриць. Варіант 13 Теоретичні відомості: Мінімальні форми представленн