【不积跬步_无以至千里】 数学知识(不定时整理)

这篇博客介绍了如何使用数学知识解决图形计算问题,包括已知多边形点坐标求面积的方法,无论点是否排序,以及切割平面的直线和折线情况。同时,讲解了求三角形面积的两种方式——海伦公式和向量叉积法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.已知多边形的点坐标,求面积

case1:点已经按照顺时针or逆时针排序好

x[n]=x[0] , y[n]=y[0];

for(int i =0;i<n;i++)

{

   sum+=(x[i]*y[i+1]-x[i+1]*y[i]);

}

 s= fabs(sum*0.5);

case2:给定点的坐标,不确定有无排序
取一个多边形任意一个顶点(x0,y0),向其他的顶点连线,将多边形分成(n-2)个三角形,设每个三角形的另两个顶点为(x1,y1),(x2,y2),则这个三角形面积为(|(x1-x0)*(y2-y0)|+|(x2-x0)*(y1-y0)|)/2,多边形的面积就是所有三角形的面积和

float result(int num,int x[ ],int y[ ])

{

int s;

for(int i =1;i<num;i+=2)

s+=(fabs((x[i]-x[0])*(y[i+1]-y[0]))+fabs((x[i+1]-x[0])*(y[i]-y[0])))/2;

}


2.切割平面。

case1:直线
1/2*n*(n+1)+1

case2:折线
2*n*n-n+1


3.求三角形面积。


case1:海伦公式
s = sqrt(p*(p-a)*(p-b)*(p-c))
p = (a+b+c)/2;

case2:向量的叉积
s = fabs(x1*y2-x2*y1);






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值