题目
基类Shape类是一个表示形状的抽象类,GetArea ()为求图形面积的函数。请从Shape类派生三角形类(Triangle),并给出具体的求面积函数,并在主函数中多态地实现调用。
public abstract class Shape{}
public class Triangle : Shape
{
public void GetArea(double a, double b, double c)
{
if ((a + b > c) && (a + c > b) && (c + b > a))
{
double p;
p = (a + b + c) * 0.5;
Console.WriteLine(Math.Sqrt(p * (p - a) * (p - b) * (p - c)));
}
else
{
Console.WriteLine("不能构成三角形!");
}
}
}//类Rectangle
static void Main(string[] args)
{
Triangle S1 = new Triangle();
Console.WriteLine("请输入三角形的三条边a,b,c:");
double a1 = Convert.ToDouble(Console.ReadLine());
double b1 = Convert.ToDouble(Console.ReadLine());
double c1 = Convert.ToDouble(Console.ReadLine());
S1.GetArea(a1, b1, c1);
}