#include <iostream>
#include <iomanip>
#define pi 3.1415926
using namespace std;
class Shape
{
public:
virtual void area() =0;
};
class Circle :public Shape //(圆形)
{
public:
Circle(double r):radius(r){}
void area()
{
cout<<(pi*radius*radius)<<endl;
}
private:
double radius;
};
class Rectangle :public Shape//(矩形)
{
public:
Rectangle(double l,double w):length(l),width(w){}
void area()
{
cout<<(length*width)<<endl;
}
private:
double length,width;
};
class Triangle :public Shape//(三角形)
{
public:
Triangle(double l,double h):length(l),hight(h){}
void area()
{
cout<<(length*hight/2)<<endl;
}
private:
double length,hight;
};
//***
void printArea(Circle s)
{
s.area();
}
void printArea(Rectangle s)
{
s.area();
}
void printArea(Triangle s)
{
s.area();
}
//*********
int main()
{
float r,a,b,w,h;
cout<<fixed<<setprecision(2);
cin>>r;
Circle circle(r);
cout<<"area of circle = ";
printArea(circle);
cin>>a>>b;
Rectangle rectangle(a,b);
cout<<"area of rectangle = ";
printArea(rectangle);
cin>>w>>h;
Triangle triangle(w,h);
cout<<"area of triangle = ";
printArea(triangle);
return 0;
}