Pagini recente » Cod sursa (job #948636) | oji_simu_2014 | Cod sursa (job #1996708) | Cod sursa (job #1058370) | Cod sursa (job #1886936)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("aria.in");
ofstream fout("aria.out");
struct punct{
int x;
int y;
}*a;
int n;
long long cross(int i)
{
punct ab,ac;
ab.x = a[i].x-a[1].x;
ab.y = a[i].y-a[1].y;
ac.x = a[i+1].x-a[1].x;
ac.y = a[i+1].y-a[1].y;
return ab.x*ac.y-ab.y*ac.x;
}
int main()
{
fin>>n;
a= new punct[n+1];
for(int i=1;i<=n;i++)
fin>>a[i].x>>a[i].y;
//starting calculating areas of triangles that have one point from a[0];
double area=0;
for(int i=2;i<n;i++)
area+=cross(i);
fout<<area/2;
return 0;
}