import Control.Monad (unless)
main = do
        n <- readLn
        unless ( n == (-1)) $ do
            print $ thirdRoot n
            main

thirdRoot :: Double -> Double
thirdRoot q = solver (q/2)
    where solver xn = if errIsSmall
                  then xn
                  else solver (funcX q xn)
                  where
                      errIsSmall = abs (xn^3 - q) < 0.00001 * q

funcX q xn = xn - (xn^3 - q)/(3 * xn^2)

