#include <bits/stdc++.h>
using namespace std;
const double pi = acos(-1.0);
const double eps = 1e-8;
int dblcmp(double x) {
  if (x < -eps) return -1;
  if (x > eps) return 1;
  return 0;
}
int main() {
  double w, h, c;
  while (scanf("%lf%lf%lf", &w, &h, &c) != EOF) {
    if (w < h) swap(w, h);
    double ftan = h / w;
    double ttan;
    if (c > 90.0) c = 180.0 - c;
    double af = c / 180.0 * pi;
    if (c == 90.00)
      ttan = DBL_MAX;
    else
      ttan = tan(af * 0.5);
    if (h == w) {
      double l1 = w + h;
      double l2 = w - h;
      l1 *= cos(af);
      l2 *= cos(af);
      double d1 = (1 + cos(af) + sin(af));
      double d2 = (1 + cos(af) - sin(af));
      l1 /= d1;
      l2 /= d2;
      double l = l1 * l1 + l2 * l2;
      l *= (tan(af));
      printf("%lf\n", (2 * w * h - l) * 0.5);
    } else {
      if (dblcmp(ttan - ftan) < 0) {
        double l1 = w + h;
        double l2 = w - h;
        l1 *= cos(af);
        l2 *= cos(af);
        double d1 = (1 + cos(af) + sin(af));
        double d2 = (1 + cos(af) - sin(af));
        l1 /= d1;
        l2 /= d2;
        double l = l1 * l1 + l2 * l2;
        l *= (tan(af));
        printf("%lf\n", (2 * w * h - l) * 0.5);
      } else if (dblcmp(ttan - ftan) == 0) {
        printf("%lf\n", (2.0 * w * h - 2.0 * h * h / tan(af)) * 0.5);
      } else {
        printf("%lf\n", h * h / sin(af));
      }
    }
  }
}
