Cod sursa(job #1758251)
| Utilizator | Data | 16 septembrie 2016 20:54:40 | |
|---|---|---|---|
| Problema | Aria | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.57 kb |
#include <fstream>
#include <iomanip>
#define VAL 100005
using namespace std;
ifstream fin("aria.in");
ofstream fout("aria.out");
struct punct
{
long double x;
long double y;
};
punct v[VAL];
int N, i;
long double Arie;
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; i++)
Arie+=(v[i].x*v[i+1].y-v[i+1].x*v[i].y);
if (Arie<0)
Arie*=-1;
fout << fixed << setprecision(7) << Arie / 2 << '\n';
fin.close();
fout.close();
return 0;
}
