题目链接:
/*
算是自己做的第一道计算几何的题目,之前因为还没学到这个知识点,好像是遇到这个知识点就跳过了...
查了许多题解,才明白该怎么写,以及为什么要这么写,其实主要就是一个公式,但是如果不知道这个公式,那就是不会做了...
罗列一下查阅的链接:
https://www.cnblogs.com/double-win/archive/2013/05/03/Double_win.html
https://www.cnblogs.com/mycapple/archive/2012/08/06/2624617.html
https://www.cnblogs.com/cykun/archive/2010/11/25/1887461.html
http://blog.csdn.net/u014436243/article/details/38875405
*/
#include <iostream>
#include <iomanip>
#define rep(i, k, n) for (int i = k; i < (n); i++)
using namespace std;
const int N = 105;
int x[N], y[N], n;
double getArea()
{
double s = 0.0;
rep(i, 0, n)
{
int tp = (i + 1) % n; // tp:: temp
s += x[i] * y[tp];
s -= x[tp] * y[i];
}
s /= 2;
return s > 0 ? s : -s;
}
int main()
{
while (cin >> n && n)
{
rep(i, 0, n) cin >> x[i] >> y[i];
cout << fixed << setprecision(1) << getArea() << endl;
}
return 0;
}