Cod sursa(job #2333960)
Utilizator | Data | 2 februarie 2019 10:00:42 | |
---|---|---|---|
Problema | Aria | Scor | 70 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.57 kb |
#include <fstream>
#include<iomanip>
using namespace std;
struct Punct{
double x,y;
};
const int N_MAX = 100000;
double mod(double x){
if(x>0) return x;
return -x;
}
int main() {
ifstream f("aria.in");
ofstream g("aria.out");
int n;
Punct puncte[N_MAX];
f>>n;
for(int i=0;i<n;++i){
f>>puncte[i].x>>puncte[i].y;
}
puncte[n]=puncte[0];
double arie;
arie=0;
for(int i=0;i<n;++i){
arie+=(puncte[i].y+puncte[i+1].y)/2*(puncte[i+1].x-puncte[i].x);
}
g<<fixed<<setprecision(5)<<mod(arie);
return 0;
}