zoukankan      html  css  js  c++  java
  • *1034计算三角形面积

     1 #include<cstdio>
     2 using namespace std;
     3 int main()
     4 {
     5     double x1,y1,x2,y2,x3,y3,s;
     6     scanf("%lf%lf%lf%lf%lf%lf",&x1,&y1,&x2,&y2,&x3,&y3);
     7     s=(x1*y2+y1*x3+x2*y3-x1*y3-y1*x2-y2*x3)/2;
     8     printf("%.2lf",s);
     9     return 0;
    10  } 

    这是一个数学题,已经坐标中的三角形的三个顶点坐标,如何求面积:

    无论三角形的顶点位置如何,△PMN总可以用一个直角梯形(或矩形)和两个直角三角形面积的和差来表示
    而在直角坐标系中,已知直角梯形和直角三角形的顶点的坐标,其面积是比较好求的.
    下面以一种情形来说明这个方法,其它情形方法一样,表达式也一样(表达式最好加上绝对值,确保是正值)
    如图情形(P在上方,M在左下,N在右下),过P作X轴的平行线L,作MA⊥L,NB⊥L(设P在A、B之间)
    则A、B的坐标是A(c,b),B(e,b)
    所以PA=a-c,PB=e-a,AM=b-d,BN=b-f,AB=e-c
    所以S△PMN=S梯形AMNB-S△PAM-S△PBN
    =(b-d+b-f)(e-c)/2-(b-d)(a-c)/2-(b-f)(e-a)/2
    =(ad+be+cf-af-bc-de)/2

  • 相关阅读:
    迭代器生成器和协程函数
    装饰器
    对haproxy.conf文件的增删改查
    函数基础
    深入理解python字符编码
    python字符串列表字典常用方法
    委托的使用
    数据库连接
    输入输出流
    泛型集合的使用
  • 原文地址:https://www.cnblogs.com/tflsnoi/p/7966259.html
Copyright © 2011-2022 走看看