|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
29.05.2018, 20:45 | #1 |
Пользователь
Регистрация: 01.03.2016
Сообщений: 20
|
Задачи
Всем привет.
Помогите решить задачи. Задание №1 Объявить класс «Прямоугольник», заданный четырьмя координатами. Предусмотреть метод изменения размеров и функцию вычисления площади прямоугольника. Задание 1 решил, выглядит оно таким образом: #include <iostream> using namespace std; class CRect { public: int left; int top; int right; int bottom; CRect( int l, int t, int r, int b ) : left(l), top(r), right(r), bottom(b) { // код, который выполняется при объявлении объекта класса CRect с указанием вершин } CRect( int w, int h ) : left(0), top(0), right(w), bottom(h) { // код, который выполняется при объявлении объекта класса CRect с указанием габаритов // при этом левый верхний угол будет на координатах 0,0 } CRect() { // код, который выполняется при объявлении объекта класса CRect без указания чего-либо left = top = right = bottom = 0; } // установка (Set) и получение (Get) ширины (Width) и высоты (Height) void SetWidth( int nWidth ) { right = left + nWidth; } void SetHeight( int nHeight ) { bottom = top + nHeight; } int GetWidth() { return right - left; } int GetHeight() { return bottom - top; } // передвинуть прямоугольник на координаты void MoveTo( int x, int y ) { right = x + GetWidth(); left = x; bottom = y + GetHeight(); top = y; } // получить площадь квадрата (произведение ширины и высоты) int GetSquare() { return GetWidth() * GetHeight(); } }; int main() { /* 0,0 ----------------- | | | | | | | | | | | | ----------------- 200,200 */ // создаем прямоугольник с заданными габаритами CRect rect( 200, 200 ); // создаем прямоугольник с заданными вершинами //CRect rect( 100, 100, 300, 300 ); cout << "Наш квадрат: A( " << rect.left << ", " << rect.top << "), C( " << rect.right << ", " << rect.bottom << " )\n"; // меняем ширину rect.SetWidth( 500 ); cout << "Наш квадрат: A( " << rect.left << ", " << rect.top << "), C( " << rect.right << ", " << rect.bottom << " )"; cout << " имеет площадь " << rect.GetSquare() << " ед."; char wait; cin >> wait; return 0; } Помогите пожалуйста реализовать остальные задачи на основании уже решенной или новым способом. Задание №2 Определить класс «точка» (см. Пример №1). Переработать ранее определённый класс «прямоугольник», где элементами данных «координаты» являются представители класса «точка». Применить различные спецификаторы доступа (private, protected, public) для защиты данных класса. Задание №3 В ранее определённом классе «Прямоугольник» реализовать метод изменения размеров фигуры как встроенный. Реализовать метод вычисления площади фигуры вне тела класса. Доступ к элементам данных Функции-элементы находятся в области действия класса, котором они определены. Обычные функции или методы другого класса могут получить доступ к элементам данных и к методам с помощью операции . или –>, применяемых соответственно к представителю или указателю на представитель класса. Задание №4 Создать локальный объект класса «Прямоугольник», ранее определённого. Задать его координаты и вывести на печать площадь фигуры. Задание №5 Динамически создать объект класса «Прямоугольник», ранее определённого. Задать его координаты и вывести на печать площадь фигуры. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Подскажите где можно найти задачи по C++, что бы задачи были начиная от простого и постепенно усложнялись. | Тимох | Общие вопросы C/C++ | 1 | 12.09.2015 21:50 |
Составить математическую модель задачи задачи линейного программирования | DemonXZ | Помощь студентам | 0 | 15.06.2013 12:02 |
Решается судьба.. Надо решить две задачи.Мне задачи, вам практика и мое уважение) | romichj | Общие вопросы C/C++ | 3 | 30.03.2012 00:33 |
ребят я не могу понять как решать эти задачи!может кто помочь в решении представленной задачи? | Andrusha07 | Помощь студентам | 0 | 09.03.2012 23:08 |