C#海伦公式求三角形面积
时间: 2023-05-31 17:03:09 浏览: 193
C是一种计算机编程语言,于1972年由丹尼斯·里奇发明。C语言被广泛应用于系统软件开发、操作系统、嵌入式系统等领域,是一种高效、灵活的编程语言。C语言的语法简单,代码可移植性好,可以直接操作硬件,因此受到广泛的欢迎和应用。C语言也是很多编程语言的基础,如C++、Java等。
相关问题
c#多态实现计算三角形面积
在C#中,多态可以用来实现计算三角形面积的不同方法,即使所有的方法都接受一个代表三角形边长的参数。以下是通过接口和虚方法(即抽象方法)来演示多态性的一个例子:
首先,我们可以创建一个抽象的`ITriangle`接口,定义一个计算面积的方法`CalculateArea`:
```csharp
public interface ITriangle
{
double CalculateArea(double sideA, double sideB, double sideC);
}
```
然后,你可以为具体的三角形类型如等边三角形、直角三角形、普通三角形分别实现这个接口:
```csharp
public class EquilateralTriangle : ITriangle
{
public double Side { get; set; }
public double CalculateArea()
{
return Math.Sqrt(3) / 4 * Side * Side;
}
}
public class RightAngleTriangle : ITriangle
{
public double Base { get; set; }
public double Height { get; set; }
public double CalculateArea()
{
return 0.5 * Base * Height;
}
}
// 对于普通的三角形,我们需要三个边长
public class NormalTriangle : ITriangle
{
public double SideA { get; set; }
public double SideB { get; set; }
public double SideC { get; set; }
// 你需要实现一个实际计算面积的方法,例如海伦公式
public double CalculateArea()
{
double s = (SideA + SideB + SideC) / 2;
return Math.Sqrt(s * (s - SideA) * (s - SideB) * (s - SideC));
}
}
```
现在,你可以通过`ITriangle`接口来调用`CalculateArea`方法,不管传入的是哪种类型的三角形实例:
```csharp
ITriangle triangle;
triangle = new EquilateralTriangle() { Side = 5 };
Console.WriteLine($"Equilateral Triangle area: {triangle.CalculateArea()}");
triangle = new RightAngleTriangle() { Base = 3, Height = 4 };
Console.WriteLine($"Right Angle Triangle area: {triangle.CalculateArea()}");
triangle = new NormalTriangle() { SideA = 3, SideB = 4, SideC = 5 };
Console.WriteLine($"Normal Triangle area: {triangle.CalculateArea()}");
```
C#做一个三角形面积周长计算程序
在C#中,你可以创建一个简单的控制台应用程序来计算三角形的面积和周长。首先,你需要用户输入三角形的三边长度,然后利用海伦公式(Heron's formula)来计算面积,以及直接相加三边长度来得到周长。以下是步骤和代码示例:
```csharp
using System;
class Program
{
static void Main()
{
Console.WriteLine("请输入三角形的三条边长:");
double a = double.Parse(Console.ReadLine());
double b = double.Parse(Console.ReadLine());
double c = double.Parse(Console.ReadLine());
// 检查是否能构成三角形
if (a + b > c && a + c > b && b + c > a)
{
// 计算半周长
double s = (a + b + c) / 2;
// 计算面积(海伦公式)
double area = Math.Sqrt(s * (s - a) * (s - b) * (s - c));
// 计算周长
double perimeter = a + b + c;
Console.WriteLine($"三角形的面积是:{area}");
Console.WriteLine($"三角形的周长是:{perimeter}");
}
else
{
Console.WriteLine("输入的边长无法构成三角形,请检查再试。");
}
Console.ReadKey();
}
}
```
在这个程序中,用户会看到提示输入三个边长,然后程序会计算并显示面积和周长。如果输入的边长无法构成三角形(即任意两边之和不大于第三边),则会给出相应的错误提示。
阅读全文