#include <fstream>
#include <cstdio>
#include <cmath>
#include <vector>
#include <assert.h>
#include <iostream>

using namespace std;

#define double long double

const double PI = 3.14159265358979323846264338327950;
const int MAX_ITER = 400;
const int cnt = 400;


struct matrix
{
	double a, b, c, d;
	matrix() {};
	matrix(double a, double b, double c, double d): a(a), b(b), c(c), d(d) {};
	double det()
	{
		return a * d - b * c;	
	}
	matrix inv()
	{
		double q = det();
		return matrix(d / q, -b / q, -c / q, a / q);	
	}
};

pair<double, double> mul(matrix m, pair<double, double> p)
{
	return make_pair(m.a * p.first + m.b * p.second, m.c * p.first + m.d * p.second);
}

double distsq(pair<double, double> a, pair<double, double> b)
{
	return (a.first - b.first) * (a.first - b.first) + (a.second - b.second) * (a.second - b.second);
}

int main()
{
	ifstream cin("ellipse.in");
	ofstream cout("ellipse.out");
	double l1, l2, alp;
	cin >> l1 >> l2 >> alp;
	alp *= PI / 180;
	//cerr.precision(20);
	double a = sqrt(l1 * l2 * sin(alp));
	//cerr << fixed << alp << " " << a << endl;
	double b = l1;
	double c = cos(alp) * l2;
	double d = sin(alp) * l2;
	matrix M = matrix(a / b, -a * c / b / d, 0, a / d);
	matrix inv = M.inv();
	a /= 2;
	pair<double, double> cent((b + c) / 2, d / 2);
	double A = 1e9, B = -1;
	for (int c = 0; c < cnt; c++)
	{
		double l = PI / cnt * c;
		double r = PI / cnt * (c + 1);
		for (int iter = 0; iter < MAX_ITER; iter++)
		{
			double ll = (2 * l + r) / 3;
			double rr = (l + 2 * r) / 3;
			double d1 = distsq(cent, mul(inv, make_pair(a + a * cos(ll), a + a * sin(ll))));
			double d2 = distsq(cent, mul(inv, make_pair(a + a * cos(rr), a + a * sin(rr))));
			if (d1 > d2) r = rr; else l = ll; 
		}
		double BB = sqrt(distsq(cent, mul(inv, make_pair(a + a * cos(l), a + a * sin(l)))));

		
		l = PI / cnt * c;
		r = PI / cnt * (c + 1);
		for (int iter = 0; iter < MAX_ITER; iter++)
		{	
			double ll = (2 * l + r) / 3;
			double rr = (l + 2 * r) / 3;
			double d1 = distsq(cent, mul(inv, make_pair(a + a * cos(ll), a + a * sin(ll))));
			double d2 = distsq(cent, mul(inv, make_pair(a + a * cos(rr), a + a * sin(rr))));
			if (d1 < d2) r = rr; else l = ll; 
		}
		double AA = sqrt(distsq(cent, mul(inv, make_pair(a + a * cos(l), a + a * sin(l)))));
		A = min(A, AA);
		B = max(B, BB);
	}
	cout.precision(20);
	cout << fixed << B << " " << A << endl;
	//cerr.precision(20);
	//cerr << fixed << A * B * 4 << " " << l1 * l2 * sin(alp) << endl;
	assert(fabs(A*B*4 - l1*l2*sin(alp)) < 1e-9);
}

