咨询牛客网华为机试HJ107 求解立方根

我的代码如下:

#include<iostream>
#include<iomanip>
#include<math.h>
using namespace std;

double cube(double n) {
    double x = 1.0;
    while(fabs(x * x * x - n) > 1e-9) {
        x = x - ((x * x * x - n) / (3 * x * x));
    }
    return x;
}


int main(){
    int num;
    cin >> num;
    cout << fixed << setprecision(1) << cube(num * 1.0) << endl;
    return 0;
}

提交时候有个测试用例无法通过-0.07的预计输出是-0.4,但是我的输出是0.0,请问这个怎么解决

  1. 输入值是多少?