计算面积(叉积)

    xiaoxiao2021-03-25  191

    计算面积

    Time Limit:10000MS  Memory Limit:65536K Total Submit:55 Accepted:41 Case Time Limit:1000MS

    Description

      呆子是一个很聪明的人但也是一个很粗心的人,因此常常会丢三落四。一次老师给呆子留了一个很简单的题目,已知平面上一平行四边形的四个顶点,求这个平行四边形的面积。但粗心的呆子却只记了三个点的坐标,因此呆子现在和郁闷。你现在能帮助呆子计算一下老师留给呆子的平行四边形可能的最大面积是多少吗?

    Input

      首先输入一个整数t表示测试数据的组数(1 =< t <= 30),接下来的t行,每行三对整数,表示呆子已知的平行四边形的顶点坐标。每对整数x, y(0<=x, y <= 10000)中第一个数表示横坐标,第二个数表示纵坐标。每组输入保证是三个不同的点。

    Output

    共输出t行,第i行为第i组数据的最大可能面积。

    输出结果保留一位小数。如果这样的平行四边形不存在,即求得的面积大小为0则输出Error。 

    分析:叉积计算平行四边形面积,若值为0说明不存在。

    代码

    var   x1,x2,x3,y1,y2,y3,i,n:longint;   m:real; begin   readln(n);   for i:=1 to n do     begin       readln(x1,y1,x2,y2,x3,y3);       m:=(x2-x1)*(y3-y1)-(x3-x1)*(y2-y1);       m:=abs(m);       if m=0 then writeln('Error') else writeln(m:0:1);     end; end.

    转载请注明原文地址: https://ju.6miu.com/read-16363.html

    最新回复(0)