#include <bits/stdc++.h>
using namespace std;
template <class T, class U>
bool cmp_second(const pair<T, U> &a, const pair<T, U> &b) {
  return a.second < b.second;
}
pair<int, int> operator+(const pair<int, int> &a, const pair<int, int> &b) {
  return make_pair(a.first + b.first, a.second + b.second);
}
pair<int, int> operator-(const pair<int, int> &a, const pair<int, int> &b) {
  return make_pair(a.first - b.first, a.second - b.second);
}
pair<int, int> &operator+=(pair<int, int> &a, const pair<int, int> &b) {
  a.first += b.first;
  a.second += b.second;
  return a;
}
pair<int, int> &operator-=(pair<int, int> &a, const pair<int, int> &b) {
  a.first -= b.first;
  a.second -= b.second;
  return a;
}
inline int sg(int x) { return x ? (x > 0 ? 1 : -1) : 0; }
const double pi = acos(-1.0);
int main(void) {
  double w, h, a;
  scanf("%lf %lf %lf", &w, &h, &a);
  if (a > 90.0) a = 180.0 - a;
  a = a / 180.0 * pi;
  double d = sqrt(w * w + h * h) * 0.5;
  double sol;
  if ((d * d + d * d - min(w, h) * min(w, h)) / (2 * d * d) <= cos(a)) {
    double A = 1 + cos(a);
    double B = sin(a);
    double x = (A * w - B * h) / (A * A - B * B);
    double y = (A * h - B * w) / (A * A - B * B);
    sol = w * h - (x * x + y * y) * sin(a) * cos(a);
  } else {
    double s = min(w, h);
    double z = s / sin(a);
    sol = z * z * sin(a);
  }
  printf("%.12lf\n", sol);
  return 0;
}
