
С++ Создать класс прямоугольник. У него есть поля: - Ширина - Высота Надо сделать: - Пустой
конструктор, который ширину и высоту будет ставить по нулям - Конструктор, который принимает и ширину и высоту. - Гетеры сетеры на каждое поле. - Метод Print, который выводит информацию о прямоугольнике. - Метод GetArea, который возвращает площадь этого прямоугольника (метод ничего не принимает). - Перегрузить оператор ==, чтобы можно было сравнивать прямоугольники.

Ответы на вопрос

Відповідь:
Снизу
Пояснення:
Ниже приведен код на C++, который реализует описанный класс "Прямоугольник":
#include <iostream>
class Rectangle {
private:
double width;
double height;
public:
Rectangle() : width(0), height(0) {}
Rectangle(double w, double h) : width(w), height(h) {}
double getWidth() const {
return width;
}
void setWidth(double w) {
width = w;
}
double getHeight() const {
return height;
}
void setHeight(double h) {
height = h;
}
void Print() const {
std::cout << "Прямоугольник: Ширина = " << width << ", Высота = " << height << std::endl;
}
double GetArea() const {
return width * height;
}
bool operator==(const Rectangle& other) const {
return (width == other.width) && (height == other.height);
}
};
int main() {
Rectangle rect1; // Создание прямоугольника с нулевой шириной и высотой
rect1.Print();
Rectangle rect2(4.5, 3.2); // Создание прямоугольника со шириной 4.5 и высотой 3.2
rect2.Print();
// Сравнение прямоугольников
if (rect1 == rect2) {
std::cout << "Прямоугольники равны." << std::endl;
} else {
std::cout << "Прямоугольники не равны." << std::endl;
}
return 0;
}
Обратите внимание, что в классе прямоугольник определены пустой конструктор и конструктор с параметрами для задания ширины и высоты. Также определены гетеры и сетеры для полей класса, метод Print для вывода информации о прямоугольнике, метод GetArea для вычисления площади прямоугольника, а также перегружен оператор == для сравнения двух прямоугольников.



Ответ:
Код и результат выполнения программы в консоле.





Вот пример класса "Прямоугольник" на C++, который соответствует вашим требованиям:
cpp#include <iostream>
class Rectangle {
private:
double width;
double height;
public:
// Пустой конструктор
Rectangle() : width(0.0), height(0.0) {}
// Конструктор с параметрами
Rectangle(double w, double h) : width(w), height(h) {}
// Геттеры и сеттеры
double getWidth() const { return width; }
void setWidth(double w) { width = w; }
double getHeight() const { return height; }
void setHeight(double h) { height = h; }
// Метод для вывода информации о прямоугольнике
void Print() const {
std::cout << "Ширина: " << width << " Высота: " << height << std::endl;
}
// Метод для вычисления площади прямоугольника
double GetArea() const {
return width * height;
}
// Перегрузка оператора ==
bool operator==(const Rectangle& other) const {
return (width == other.width) && (height == other.height);
}
};
int main() {
// Создание объектов класса Rectangle
Rectangle rect1; // Используется пустой конструктор
Rectangle rect2(4.0, 5.0); // Используется конструктор с параметрами
// Вывод информации о прямоугольниках
rect1.Print();
rect2.Print();
// Вычисление площади
std::cout << "Площадь rect1: " << rect1.GetArea() << std::endl;
std::cout << "Площадь rect2: " << rect2.GetArea() << std::endl;
// Сравнение прямоугольников
if (rect1 == rect2) {
std::cout << "Прямоугольники равны." << std::endl;
} else {
std::cout << "Прямоугольники не равны." << std::endl;
}
return 0;
}
В этом примере класс Rectangle
имеет пустой конструктор, конструктор с параметрами, геттеры и сеттеры для ширины и высоты, методы Print
и GetArea
, а также перегрузку оператора ==
для сравнения двух прямоугольников.


Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili