1、已知三顶点(x1,y1)  (x2,y2)  (x3,y3)求三角形面积:

      

2、任意凸多边形(x1,y1) (x2,y2) (x3,y3)......(xn,yn)面积公式:

      

其中S在算完后需要再取一个绝对值。

这里有道例题:例题链接

这个是代码:

#include<iostream>
#include<algorithm>
#include<cstdio>
#include<cstdlib>
#include<math.h>
#include<cmath>
using namespace std;
const int maxn = 10;
typedef long long ll;
typedef unsigned long long ull;
struct Node {
	int x;
	int y;
}p[maxn];
int n;
int main()
{
	cin >> n;
	for (int i = 1; i <= n; i++) {
		cin >> p[i].x >> p[i].y;
	}
	int s = 0;
	if (n == 1 || n == 2) {
		cout << 0 << endl;
		return 0;
	}
	for (int i = 1; i<n; i++) {
		s += (p[i].x*p[i + 1].y - p[i + 1].x*p[i].y);
	}
	s += (p[n].x*p[1].y - p[1].x*p[n].y);
	s = abs(s);
	if (s % 2 == 0)
		cout << s / 2 << endl;
	else
		cout << s / 2 + 1 << endl;
	return 0;
}