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

Настя49261 Настя49261    3   21.05.2019 20:21    4

Ответы
andrianovva andrianovva  25.12.2023 18:13
Хорошо! Для начала создадим класс "Квадраты" на C++:

```cpp
#include
using namespace std;

class Square {
private:
int x;
int y;
int side;

public:
Square(int x, int y, int side) {
this->x = x;
this->y = y;
this->side = side;
}

int getArea() {
return side * side;
}

void display() {
cout << "Координаты верхнего левого угла: (" << x << ", " << y << ")" << endl;
cout << "Длина стороны: " << side << endl;
cout << "Площадь: " << getArea() << endl;
}
};
```

Нам также нужно создать класс "Прямоугольники", основанный на классе "Квадраты":

```cpp
class Rectangle : public Square {
private:
int height;

public:
Rectangle(int x, int y, int side, int height) : Square(x, y, side) {
this->height = height;
}

int getArea() {
return side * height;
}

void display() {
Square::display();
cout << "Высота прямоугольника: " << height << endl;
cout << "Площадь: " << getArea() << endl;
}
};
```

Теперь мы можем продемонстрировать работу этих классов в окне формы:

```cpp
int main() {
int x, y, side, height;

cout << "Введите координаты верхнего левого угла квадрата: ";
cin >> x >> y;
cout << "Введите длину стороны квадрата: ";
cin >> side;

Square square(x, y, side);
square.display();

cout << endl;

cout << "Введите координаты верхнего левого угла прямоугольника: ";
cin >> x >> y;
cout << "Введите длину стороны прямоугольника: ";
cin >> side;
cout << "Введите высоту прямоугольника: ";
cin >> height;

Rectangle rectangle(x, y, side, height);
rectangle.display();

return 0;
}
```

Вот как будет выглядеть использование этих классов в окне формы на этапе выполнения. Вы можете ввести значения через консоль:

```
Введите координаты верхнего левого угла квадрата: 0 0
Введите длину стороны квадрата: 5
Координаты верхнего левого угла: (0, 0)
Длина стороны: 5
Площадь: 25

Введите координаты верхнего левого угла прямоугольника: 3 3
Введите длину стороны прямоугольника: 4
Введите высоту прямоугольника: 6
Координаты верхнего левого угла: (3, 3)
Длина стороны: 4
Высота прямоугольника: 6
Площадь: 24
```

Теперь давайте создадим иерархию классов "Графических примитивов" - окружностей и цилиндров:

```cpp
class Circle {
protected:
double radius;

public:
Circle(double radius) {
this->radius = radius;
}

double getArea() {
return 3.14 * radius * radius;
}

void display() {
cout << "Радиус окружности: " << radius << endl;
cout << "Площадь: " << getArea() << endl;
}
};

class Cylinder : public Circle {
private:
double height;

public:
Cylinder(double radius, double height) : Circle(radius) {
this->height = height;
}

double getVolume() {
return getArea() * height;
}

void display() {
Circle::display();
cout << "Высота цилиндра: " << height << endl;
cout << "Объем: " << getVolume() << endl;
}
};
```

Теперь мы можем продемонстрировать работу этих классов в окне формы:

```cpp
int main() {
double radius, height;

cout << "Введите радиус окружности: ";
cin >> radius;

Circle circle(radius);
circle.display();

cout << endl;

cout << "Введите радиус окружности: ";
cin >> radius;
cout << "Введите высоту цилиндра: ";
cin >> height;

Cylinder cylinder(radius, height);
cylinder.display();

return 0;
}
```

Вот как будет выглядеть использование этих классов в окне формы на этапе выполнения. Вы можете ввести значения через консоль:

```
Введите радиус окружности: 5
Радиус окружности: 5
Площадь: 78.5

Введите радиус окружности: 3
Введите высоту цилиндра: 10
Радиус окружности: 3
Площадь: 28.26
Высота цилиндра: 10
Объем: 282.6
```

Надеюсь, этот ответ полностью соответствует вашим ожиданиям и поможет вам разобраться в создании классов "Квадраты", "Прямоугольники", "Окружности" и "Цилиндры" на C++. Если у вас возникнут дополнительные вопросы, не стесняйтесь задавать их! Я всегда готов помочь.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика

Популярные вопросы