设计三角形3种面积计算的重载方法,并在主函数中分别调用
时间: 2025-01-06 18:51:35 浏览: 5
在C#中,你可以定义三个重载的方法来计算不同类型的三角形面积,比如等边三角形、直角三角形和普通三角形。这里我将为你展示如何实现这些方法以及在主函数中调用它们:
首先,我们定义一个名为`Triangle`的基类,包含一个抽象的计算面积的方法`CalculateArea`:
```csharp
public abstract class Triangle
{
public abstract double CalculateArea();
}
// 等边三角形类
public class EquilateralTriangle : Triangle
{
private double side;
public EquilateralTriangle(double side)
{
this.side = side;
}
public override double CalculateArea()
{
return (Math.Sqrt(3) / 4) * side * side;
}
}
// 直角三角形类
public class RightAngleTriangle : Triangle
{
private double baseLength;
private double height;
public RightAngleTriangle(double baseLength, double height)
{
this.baseLength = baseLength;
this.height = height;
}
public override double CalculateArea()
{
return 0.5 * baseLength * height;
}
}
// 普通三角形类
public class RegularTriangle : Triangle
{
private double a;
public RegularTriangle(double a)
{
this.a = a;
}
// 这里假设所有边长相等,所以可以直接用单个边长代替半周长进行计算
public override double CalculateArea()
{
return 0.25 * Math.Sqrt(3) * a * a;
}
}
```
然后,在主函数(`Main`)中创建并调用这三个类的对象:
```csharp
using System;
class Program
{
static void Main(string[] args)
{
// 创建并计算等边三角形面积
EquilateralTriangle equiTriangle = new EquilateralTriangle(5);
Console.WriteLine("Equilateral Triangle Area: " + equiTriangle.CalculateArea());
// 创建并计算直角三角形面积
RightAngleTriangle rightTriangle = new RightAngleTriangle(3, 4);
Console.WriteLine("Right Angle Triangle Area: " + rightTriangle.CalculateArea());
// 创建并计算普通三角形面积
RegularTriangle regularTriangle = new RegularTriangle(6);
Console.WriteLine("Regular Triangle Area: " + regularTriangle.CalculateArea());
Console.ReadLine(); // 添加此行以便程序暂停等待用户输入
}
}
```
在这个例子中,每个子类都实现了`Triangle`中的抽象方法`CalculateArea()`,提供了特定类型三角形的面积计算方法。
阅读全文