Pagini recente » Cod sursa (job #2644566) | Cod sursa (job #3197574) | Cod sursa (job #1721656) | Cod sursa (job #1108825) | Cod sursa (job #1229743)
#include <fstream>
#include <iomanip>
#define MAX 500001
#define FIN "aria.in"
#define FOUT "aria.out"
using namespace std;
double X[ MAX ], Y[ MAX ];
double sol = 0;
int N;
void read();
void solve();
double det(double,double,double,double);
int main() {
read();
solve();
return (0);
};
void read() {
int i;
ifstream fin( FIN );
fin>>N;
for(i = 0; i < N; i++) fin>>X[i]>>Y[i];
X[ N ] = X[ 0 ];
Y[ N ] = Y[ 0 ];
};
void solve() {
ofstream fout( FOUT );
for(int i = 0; i < N; i++) sol += det(X[i], X[i+1], Y[i], Y[i+1]);
sol /= 2; if(sol<0) sol *= -1;
fout<<fixed<<setprecision(8)<<sol;
}
double det(double x1,double y1,double x2,double y2) {
return x1 * y2 - x2 * y1;
}