Pagini recente » Cod sursa (job #674049) | Cod sursa (job #1758143) | Cod sursa (job #780082) | Cod sursa (job #722238) | Cod sursa (job #2655171)
#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define ld long double
#define l long
#define d double
#define fo(i, n) for (i = 0; i < n; i++)
#define si(x) scanf('%d', &x)
#define sl(x) scanf('%lld', &x)
#define ss(s) scanf('%s', s)
#define pi(x) printf('%d', x)
#define pl(x) printf('%lld', x)
#define ps(s) printf('%s', s)
#define pb push_back
#define mp make_pair
#define F first
#define S second
#define all(x) x.begin(), x.end()
#define clr(x) memset(x, 0, sizeof(x))
#define sortall(x) sort(all(x))
typedef pair<int, int> pii;
typedef pair<ll, ll> pl;
typedef vector<int> vi;
typedef vector<ll> vl;
typedef vector<pii> vpii;
#define infile "aria.in"
#define outfile "aria.out"
struct point
{
ld x,y;
};
point first,second,third;
int main()
{
fstream f;
f.open(infile,ios::in);
ld area = 0;
int n = 0;
f>>n;
f>>first.x>>first.y;
third =first;
for(int i = 2; i<= n;i++)
{
f>>second.x>>second.y;
area = area + third.x*second.y - third.y*second.x;
third = second;
}
area = area + first.y*second.x - second.y*first.x;
f.close();
f.open(outfile,ios::out);
f<<fixed<<setprecision(8)<<area/2.0;
f.close();
return 0;
}