Pagini recente » Cod sursa (job #3178409) | Cod sursa (job #1121355) | Cod sursa (job #648845) | Cod sursa (job #1081680) | Cod sursa (job #2417327)
#include <iostream>
#include <fstream>
#include <iomanip>
using namespace std;
ifstream fin("aria.in");
ofstream fout("aria.out");
typedef struct
{
long double x,y;
} Punct;
double modul(long double x)
{
if(x<0)
x=-x;
return x;
}
double Arie_triunghi(Punct a,Punct b,Punct c)
{
return ((b.x-a.x)*(c.y-a.y)-(c.x-a.x)*(b.y-a.y))/2;
}
Punct P[100005];
double Arie_convex(Punct P[], int n)
{
long double arie=0;
for(int i=2; i<n; i++)
arie=arie+Arie_triunghi(P[1],P[i],P[i+1]);
return arie;
}
int main()
{
int n;
fin>>n;
for(int i=1; i<=n; i++)
fin>>P[i].x>>P[i].y;
P[0]=P[n];
P[n+1]=P[1];
fout<<fixed<<setprecision(5)<<Arie_convex(P,n);
}