Cod sursa(job #2163778)
Utilizator | Data | 12 martie 2018 19:57:53 | |
---|---|---|---|
Problema | Aria | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.52 kb |
#include <iostream>
#include <fstream>
#include <iomanip>
using namespace std;
ifstream f ("aria.in");
ofstream g ("aria.out");
double sum;
int n;
struct poligon{
double x,y;
}a[100002];
int main(){
f>>n;
for(int i=1; i<=n; ++i)
f>>a[i].x>>a[i].y;
if(n>2){
a[0].x=a[n].x;
a[0].y=a[n].y;
for(int i=1; i<=n; ++i)
sum=sum+(double)((a[i-1].x-a[i].x)*(a[i-1].y+a[i].y))/2;
g<<fixed<<setprecision(6)<<sum<<'\n';
}
else g<<"0\n";
}