#include <bits/stdc++.h>
using namespace std;
template <class T>
T abs(T x) {
  return x > 0 ? x : -x;
}
const double pi = 2 * asin(1.0);
const double eps = 1e-7;
int n;
int m;
double w, h, a;
vector<pair<double, pair<double, double> > > v;
double x1[5], y8687969[5], x2[5], y2[5];
int cross(double x1, double y8687969, double x2, double y2, double x3,
          double y3, double x4, double y4, double *x, double *y) {
  double a = x2 - x1;
  double b = x3 - x4;
  double c = x3 - x1;
  double d = y2 - y8687969;
  double e = y3 - y4;
  double f = y3 - y8687969;
  if (fabs(a * e - b * d) > eps) {
    double t = (c * e - b * f) / (a * e - b * d);
    double s = (a * f - c * d) / (a * e - b * d);
    if (t > -eps && t < 1 + eps && s > -eps && s < 1 + eps) {
      *x = x1 + (x2 - x1) * t;
      *y = y8687969 + (y2 - y8687969) * t;
      return 1;
    }
  }
  return 0;
}
int main() {
  cin >> w >> h >> a;
  w /= 2;
  h /= 2;
  a = a / 180 * pi;
  x1[0] = -w;
  y8687969[0] = -h;
  x1[1] = w;
  y8687969[1] = -h;
  x1[2] = w;
  y8687969[2] = h;
  x1[3] = -w;
  y8687969[3] = h;
  x1[4] = -w;
  y8687969[4] = -h;
  for (int i = 0; i < 5; i++) {
    x2[i] = x1[i] * cos(a) - y8687969[i] * sin(a);
    y2[i] = x1[i] * sin(a) + y8687969[i] * cos(a);
  }
  for (int i = 0; i < 4; i++)
    for (int j = 0; j < 4; j++) {
      double xc, yc;
      if (cross(x1[i], y8687969[i], x1[i + 1], y8687969[i + 1], x2[j], y2[j],
                x2[j + 1], y2[j + 1], &xc, &yc)) {
        v.push_back(make_pair(atan2(yc, xc), make_pair(xc, yc)));
      }
    }
  sort((v).begin(), (v).end());
  v.push_back(v[0]);
  double ans = 0;
  for (int i = 0; i + 1 < ((int)(v).size()); i++)
    ans += v[i].second.first * v[i + 1].second.second -
           v[i].second.second * v[i + 1].second.first;
  printf("%.10f\n", abs(ans / 2));
  return 0;
}
