Pagini recente » Cod sursa (job #397492) | Cod sursa (job #1360128) | Cod sursa (job #444451) | Cod sursa (job #1429732) | Cod sursa (job #1887558)
#include <iostream>
#include <cstdio>
using namespace std;
struct punct
{
double x,y;
}vPoligon[100005];
int n;
void citire()
{
scanf("%d",&n);
for(int i=1;i<=n;i++)
{
scanf("%lf%lf",&vPoligon[i].x,&vPoligon[i].y);
}
}
double calculDet(punct p1, punct p2)
{
return (p1.x*p2.y-p2.x*p1.y);
}
void calculAriePrinPunct()
{
double aria=0;
for(int i=1;i<n;i++)
{
aria+=calculDet(vPoligon[i],vPoligon[i+1]);
}
aria+=calculDet(vPoligon[n],vPoligon[1]);
aria/=2;
printf("%.5lf",aria);
}
int main()
{
freopen("aria.in","r",stdin);
freopen("aria.out","w",stdout);
citire();
calculAriePrinPunct();
return 0;
}