Data Structures

Práctica #2: Rectángulos

Objetivo

Durante esta actividad, los alumnos serán capaces de:


Descripción

En los equipos definidos por el profesor, escribe en C++ un programa llamado rectangle.cpp que defina una clase llamada Rectangle que permita crear objetos que representen rectángulos. Para ello deberás definir las siguientes operaciones:

Operación Descripción
Rectangle(
    int width,
    int height)
Constructor que inicializa un nuevo objeto que representa un rectángulo de un cierto ancho y altura.
int get_width() Función miembro que devuelve el ancho del objeto receptor.
int get_height() Función miembro que devuelve la altura del objeto receptor.
int perimeter() Función miembro que devuelve el perímetro del objeto receptor.
int area() Función miembro que devuelve el área del objeto receptor.
void draw() Función miembro que “dibuja” en la salida estándar el objeto receptor usando asteriscos (ver ejemplos).

Prueba tu clase usando el siguiente código:

#include <iostream>

using namespace std;

// Coloca aquí tu código

int main()
{
    Rectangle a {4, 3};
    Rectangle b {5, 10};

    cout << "Primer rectángulo" << endl;
    cout << "Ancho: " << a.get_width() << endl;
    cout << "Altura: " << a.get_height() << endl;
    cout << "Perímetro: " << a.perimeter() << endl;
    cout << "Área: " << a.area() << endl << endl;
    a.draw();

    cout << endl << "Segundo rectángulo" << endl;
    cout << "Ancho: " << b.get_width() << endl;
    cout << "Altura: " << b.get_height() << endl;
    cout << "Perímetro: " << b.perimeter() << endl;
    cout << "Área: " << b.area() << endl << endl;
    b.draw();

    return 0;
}

Al ejecutar el código de arriba se debe producir la siguiente salida:

Primer rectángulo
Ancho: 4
Altura: 3
Perímetro: 14
Área: 12

* * * *
* * * *
* * * *

Segundo rectángulo
Ancho: 5
Altura: 10
Perímetro: 30
Área: 50

* * * * *
* * * * *
* * * * *
* * * * *
* * * * *
* * * * *
* * * * *
* * * * *
* * * * *
* * * * *