c#求长方形的面积周长公式_C# 定积分求周长&面积原理 代码实现

前言:前些日子,因为工作原因,接触到了求解曲线周长,真的是搞了很久,学生时代真的很简单,但是如今的我来说,忘记了....很多人跟我应该一样的吧。

所以来巩固加强一下记忆。

一开始的时候,求周长嘛,找公式呗,什么matlab呀,乱七八糟的,晕,最后找到了可能还不能满足项目的需求,因为可能计算量过大。(我就是这样子的,灵活性相对较低)

还有就是明明自己可以用代码实现,为什么非要插件,工具呐,这么不自信的?

所以,“一怒之下”,自己去看了一下定积分求周长的原理,自己还是用代码来实现吧。

(以下内容纯是个人这段时间的理解,如果有错误的,欢迎指正出来。)

首先需要说说两个概念,曲线和周长,因为我们要求他们嘛。

曲线:

这个世界,有曲线吗?我的回答是,没有。那...这...曲线是由无数个直接拼接而成。再准确的说无数个很短的曲线拼接而成。

(如果您彻底理解了这句话,后面就不用看了,基本就没了。)

面积:

与周长的概念类似,没有正方形,没有圆形。只有三角形,所有的图形都是三角形拼接而成。而两个三角形拼成长方形,而我们的面积是由无数个长方形,拼接而成。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是使用C#多态实现圆的面积周长、矩形的面积周长、三角形的面积周长的示例代码: ```csharp using System; // 定义一个抽象类Shape abstract class Shape { public abstract double GetArea(); // 获取面积的抽象方法 public abstract double GetPerimeter(); // 获取周长的抽象方法 } // 定义圆形类Circle,继承自Shape class Circle : Shape { private double radius; // 圆的半径 public Circle(double radius) { this.radius = radius; } public override double GetArea() { return Math.PI * radius * radius; // 计算圆的面积 } public override double GetPerimeter() { return 2 * Math.PI * radius; // 计算圆的周长 } } // 定义矩形类Rectangle,继承自Shape class Rectangle : Shape { private double length; // 矩形的长度 private double width; // 矩形的宽度 public Rectangle(double length, double width) { this.length = length; this.width = width; } public override double GetArea() { return length * width; // 计算矩形的面积 } public override double GetPerimeter() { return 2 * (length + width); // 计算矩形的周长 } } // 定义三角形类Triangle,继承自Shape class Triangle : Shape { private double side1; // 三角形的边长1 private double side2; // 三角形的边长2 private double side3; // 三角形的边长3 public Triangle(double side1, double side2, double side3) { this.side1 = side1; this.side2 = side2; this.side3 = side3; } public override double GetArea() { double p = (side1 + side2 + side3) / 2; // 计算半周长 return Math.Sqrt(p * (p - side1) * (p - side2) * (p - side3)); // 计算三角形的面积 } public override double GetPerimeter() { return side1 + side2 + side3; // 计算三角形的周长 } } // 测试代码 class Program { static void Main(string[] args) { // 创建一个圆形对象 Circle circle = new Circle(5); Console.WriteLine("圆的面积:{0}", circle.GetArea()); Console.WriteLine("圆的周长:{0}", circle.GetPerimeter()); // 创建一个矩形对象 Rectangle rectangle = new Rectangle(4, 6); Console.WriteLine("矩形的面积:{0}", rectangle.GetArea()); Console.WriteLine("矩形的周长:{0}", rectangle.GetPerimeter()); // 创建一个三角形对象 Triangle triangle = new Triangle(3, 4, 5); Console.WriteLine("三角形的面积:{0}", triangle.GetArea()); Console.WriteLine("三角形的周长:{0}", triangle.GetPerimeter()); } } ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值