Pagini recente » Cod sursa (job #1702493) | Cod sursa (job #3169664) | Rezultatele filtrării | Borderou de evaluare (job #2160018) | Cod sursa (job #1932422)
#include <fstream>
#include <iomanip>
using namespace std;
ifstream fin("aria.in");
ofstream fout("aria.out");
int n,i;
long double aria;
struct punct
{
int x, y;
}v[100005];
int main()
{
fin>>n;
for(i=1;i<=n;i++)
fin>>v[i].x>>v[i].y;
v[n+1]=v[1];
for(i=1;i<n-1;i++)
aria+=v[i].x*v[i+1].y+v[i+1].x*v[i+2].y+v[i+2].x*v[i].y-(v[i].y*v[i+1].x+v[i+1].y*v[i+2].x+v[i+2].y*v[i].x);
aria/=2.0;
if(aria<0)
aria*=-1;
fout<<fixed<<setprecision(8)<<aria;
return 0;
}