Pagini recente » Cod sursa (job #835774) | Cod sursa (job #721518) | Cod sursa (job #2178365) | Cod sursa (job #1393137) | Cod sursa (job #1689305)
#include <fstream>
using namespace std;
ifstream fin("aria.in");
ofstream fout("aria.out");
struct punct{
double x, y;
} v[100010];
double abs(double a){
if(a < 0)
return -a;
return a;
}
double sarrus(punct a, punct b, punct c){
return abs((a.x * b.y + a.y * c.x + b.x * c.y - c.x * b.y - b.x * a.y - a.x * c.y) / 2);
}
int n;
double aria;
int main()
{
fin >> n;
for(int i = 1; i <= n; ++i){
fin >> v[i].x >> v[i].y;
}
for(int i = 1; i <= n - 2; ++i){
aria += sarrus(v[i], v[i + 1], v[i + 2]);
}
fout << aria;
return 0;
}