using System.Collections.Generic;
using System.Threading.Tasks;
public Shape(int x, int y)
public virtual double Area()
public virtual double Perimeter()
public class Triangle : Shape
public Triangle(int x, int y, double Height, double Base) : base(x, y)
public override double Area()
return (Height * Base) / 2;
public override double Perimeter()
x=Math.Pow(Height , 2)+Math.Pow(Base,2);
return x + Height + Base;
public class Rectangle : Shape
public Rectangle(int x, int y, int Width, int Length) : base(x, y)
public override double Area()
public override double Perimeter()
return (Length * 2) + (Width * 2);
public static void Main()
Triangle Tri1 = new Triangle(5, 5, 10, 20);
Console.WriteLine("Area is "+ Tri1.Area());
Console.WriteLine("Perimeter is "+ Tri1.Perimeter());