double S = 0;
for (int i = 0; i < n - 1; i++) {
S += -0.5 * ( y[i + 1] + y[i]) * (x[i + 1] - x[i]);
}
S += -0.5 * ( y[0] + y[n - 1]) * (x[0] - x[n - 1]);
if ( S > 0)
cout << "counter clockwise" << endl;
else
cout << "clockwise" << endl;
原理: