RT:
方法一:调用库函数pow()
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
double ndata;
cin>>ndata;
double output=pow(ndata,1.0/3);
cout<<output<<endl;
return 0;
}
方法二:不调用库函数,使用迭代法
#include<iostream>
#include<math.h>
using namespace std;
double GetCubeRoot(double ndata);//迭代法求立方根
int main()
{
double ndata;
cin>>ndata;
double cuberoot;
cuberoot=GetCubeRoot(ndata);
cout<<cuberoot<<endl;
return 0;
}
double GetCubeRoot(double ndata)
{
double x0,x1,output;
x0=ndata;
x1=(2*x0/3)+(ndata/(3*x0*x0));
while(fabs(x1-x0)>0.000001)
{
x0=x1;
x1=(2*x0/3)+(ndata/(3*x0*x0));
}
output=x1;
return output;
}