#coding: utf-8

from math import tan, pi

eps = 10**(-12)



def binary_search(a, b, x):

    l = pi / 2

    r = 0.0

    if x <= a ** 2 * b / 2:

        while l - r > eps:

            mid = (r + l) / 2

            if a * b**2 / tan(mid) / 2 == x:

                return x

            elif a * b**2 / tan(mid) / 2 > x:

                r = mid

            else:

                l = mid

        return l

        

    else:

        while l - r > eps:

            mid = (r + l) / 2

            if a**2 * b - a**3 * tan(mid) / 2 == x:

                return x

            elif a**2 * b - a**3 * tan(mid) / 2 > x:

                r = mid

            else:

                l = mid

        return l



a, b, x = list(map(int, input().split()))

print(("{:.10f}".format(binary_search(a, b, x) * 180 / pi)))
#coding: utf-8

from math import tan, pi

eps = 10**(-9)



def binary_search(a, b, x):

    l = pi / 2

    r = 0.0

    if x <= a ** 2 * b / 2:

        while l - r > eps:

            mid = (r + l) / 2

            if a * b**2 / tan(mid) / 2 == x:

                return x

            elif a * b**2 / tan(mid) / 2 > x:

                r = mid

            else:

                l = mid

        return l

        

    else:

        while l - r > eps:

            mid = (r + l) / 2

            if a**2 * b - a**3 * tan(mid) / 2 == x:

                return x

            elif a**2 * b - a**3 * tan(mid) / 2 > x:

                r = mid

            else:

                l = mid

        return l



a, b, x = list(map(int, input().split()))

print(("{:.10f}".format(binary_search(a, b, x) * 180 / pi)))
# coding: utf-8
from math import tan, pi

eps = 10 ** (-12)


def binary_search(a, b, x):
    l = pi / 2
    r = 0.0
    if x <= a**2 * b / 2:
        while l - r > eps:
            mid = (r + l) / 2
            if a * b**2 / tan(mid) / 2 == x:
                return x
            elif a * b**2 / tan(mid) / 2 > x:
                r = mid
            else:
                l = mid
        return l
    else:
        while l - r > eps:
            mid = (r + l) / 2
            if a**2 * b - a**3 * tan(mid) / 2 == x:
                return x
            elif a**2 * b - a**3 * tan(mid) / 2 > x:
                r = mid
            else:
                l = mid
        return l


a, b, x = list(map(int, input().split()))
print(("{:.10f}".format(binary_search(a, b, x) * 180 / pi)))

# coding: utf-8
from math import tan, pi

eps = 10 ** (-9)


def binary_search(a, b, x):
    l = pi / 2
    r = 0.0
    if x <= a**2 * b / 2:
        while l - r > eps:
            mid = (r + l) / 2
            if a * b**2 / tan(mid) / 2 == x:
                return x
            elif a * b**2 / tan(mid) / 2 > x:
                r = mid
            else:
                l = mid
        return l
    else:
        while l - r > eps:
            mid = (r + l) / 2
            if a**2 * b - a**3 * tan(mid) / 2 == x:
                return x
            elif a**2 * b - a**3 * tan(mid) / 2 > x:
                r = mid
            else:
                l = mid
        return l


a, b, x = list(map(int, input().split()))
print(("{:.10f}".format(binary_search(a, b, x) * 180 / pi)))

-eps = 10 ** (-12) +eps = 10 ** (-9)