func_code_string: #include <bits/stdc++.h>   using namespace std;   const int INF = 2147483647;   const long long LLINF = 9223372036854775807LL;   const double eps = 0.0001;   void swap(double &a, double &b) {     double t = a;     a = b;     b = t;   }   int main() {     double x1, x2, x3;     double y1, y2, y3;     double a1, a2, a3;     double l1, l2, l3;     cin >> x1 >> y1 >> x2 >> y2 >> x3 >> y3;     l1 = (x2 - x3) * (x2 - x3) + (y2 - y3) * (y2 - y3);     l2 = (x1 - x3) * (x1 - x3) + (y1 - y3) * (y1 - y3);     l3 = (x1 - x2) * (x1 - x2) + (y1 - y2) * (y1 - y2);     a1 = acos((l2 + l3 - l1) / (2 * sqrt(l2) * sqrt(l3))) * 2;     a2 = acos((l1 + l3 - l2) / (2 * sqrt(l1) * sqrt(l3))) * 2;     a3 = acos((l1 + l2 - l3) / (2 * sqrt(l1) * sqrt(l2))) * 2;     double r2 = l1 / (2 * (1 - cos(a1)));     int i = 0;     int count;     double ang, z2, z3;     if (a1 > a2) swap(a1, a2);     if (a1 > a3) swap(a1, a3);     while (true) {       ang = a1 / (++i);       z2 = a2 / ang;       z3 = a3 / ang;       if (abs(z3 - round(z3)) < eps && abs(z2 - round(z2)) < eps) {         count = round(z2) + round(z3) + i;         break;       }     }     double s = count * (r2 * sin(ang)) / 2;     printf( %.6lf n , s);     return 0;   }   