public static void Main()
Console.WriteLine("Hello World");
Circle myCircle = new Circle(20);
Rectangle myRectangle = new Rectangle(20,30);
ShapeAreaOutputter myOutputter = new ShapeAreaOutputter();
myOutputter.areaOutPut(myCircle);
myOutputter.areaOutPut(myRectangle);
public interface IOutputter{
void areaOutPut(Circle circle);
void areaOutPut(Rectangle rectangle);
public class ShapeAreaOutputter : IOutputter
public void areaOutPut(Circle circle){
Console.WriteLine("The Area of this circle is "+circle.getAreaOfCircle());
public void areaOutPut(Rectangle rectangle){
Console.WriteLine("The Area of this Rectangle is "+rectangle.getAreaOfRectangle());
const double pi = 3.14159;
private double radius {get;set;}
public Circle(double radius){
public double getAreaOfCircle(){
return pi*Math.Pow(this.radius,2);
private double length {get;set;}
private double width {get;set;}
public Rectangle(double length,double width){
public void setLength(double l){
public void setWidth(double w){
public double getAreaOfRectangle(){
return this.length *this.width;