C++ Code Example: compile-time polymorphism (function overloading)

#include <iostream>
#include <math.h>
using namespace std;

void calculate(float a) {
    cout << "Area of square: " << a * a << endl;
    cout << "Circumference of square: " << 4 * a << endl;
}

void calculate(double r) {
    cout << "Area of circle: " << M_PI * (r * r) << endl;
    cout << "Circumference of circle: " << 2 * M_PI * (r * r) << endl;
}

void calculate(float a, float b) {
    cout << "Area of rectangle: " << a * b << endl;
    cout << "Circumference of rectangle: " << 2 * (a + b) << endl;
}

int main() {
    calculate(4, 3);
    calculate(4.5f);
    calculate(5.6);

    return 0;
}
Output
Area of rectangle: 12
Circumference of rectangle: 14
Area of square: 20.25
Circumference of square: 18
Area of circle: 98.5203
Circumference of circle: 197.041