Create a base class `Shape`, and derive classes `Rectangle` and `Triangle`. Use functions to input dimensions and calculate area of each shape.

SOLUTION....

Pure Virtual Function Example in C++

#include <iostream>
using namespace std;

// Base class
class Shape {
public:
    virtual void input() = 0;   // Pure virtual function
    virtual void area() = 0;    // Pure virtual function
};

// Derived class: Rectangle
class Rectangle : public Shape {
private:
    float length, breadth;
public:
    void input() override {
        cout << "Enter length of rectangle: ";
        cin >> length;
        cout << "Enter breadth of rectangle: ";
        cin >> breadth;
    }
    void area() override {
        cout << "Area of Rectangle = " << (length * breadth) << endl;
    }
};

// Derived class: Triangle
class Triangle : public Shape {
private:
    float base, height;
public:
    void input() override {
        cout << "Enter base of triangle: ";
        cin >> base;
        cout << "Enter height of triangle: ";
        cin >> height;
    }
    void area() override {
        cout << "Area of Triangle = " << (0.5 * base * height) << endl;
    }
};

// Main function
int main() {
    Rectangle r;
    Triangle t;

    cout << "--- Rectangle ---" << endl;
    r.input();
    r.area();

    cout << "\n--- Triangle ---" << endl;
    t.input();
    t.area();

    return 0;
}
    

OUTPUT

Leave a Reply

Your email address will not be published. Required fields are marked *