#include<cstdio>
#include<cstdlib>
#include<cmath>
#include<cstring>
#include<cctype>
#include<iostream>
#include<algorithm>
#include<vector>
#include<string>
#include<stack>
#include<queue>
#include<map>

using namespace std;
const int dx[] = {1,0,-1,0},dy[] = {0,1,0,-1};
#define INF 999999
#define rep(i,j) for(int i=0;i<(j);i++)
#define reps(i,j,k) for(int i=j;i<k;i++)
typedef long long ll;
typedef unsigned long long ull;

int main(){
    double x;
    while(scanf("%lf",&x), x != -1.0){
        double dp[100000]={0.0};
        dp[0] = x*0.5;
        int cnt = 0;
        while(abs(dp[cnt]*dp[cnt]*dp[cnt]) - x >= 0.00001*x){
            cnt++;
            dp[cnt] = dp[cnt-1] - (((dp[cnt-1])*(dp[cnt-1])*(dp[cnt-1])-x)/(3*(dp[cnt-1])*(dp[cnt-1])));
        }
        printf("%lf\n",dp[cnt]);
    }
	return 0;
}