C++ 求不出负数的立方根,float c=pow(-100,1.0/3) 得不到正确值有什么办法求立方根

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/05 13:27:49
C++ 求不出负数的立方根,float c=pow(-100,1.0/3) 得不到正确值有什么办法求立方根

C++ 求不出负数的立方根,float c=pow(-100,1.0/3) 得不到正确值有什么办法求立方根
C++ 求不出负数的立方根,float c=pow(-100,1.0/3) 得不到正确值
有什么办法求立方根

C++ 求不出负数的立方根,float c=pow(-100,1.0/3) 得不到正确值有什么办法求立方根
VC6.0中原型为double pow( double x,double y );
其中x>0
可以转成正数来求.
c=-pow(100,1/3)

这个应该是数据类型的问题吧

#include
#include
void main()
{
float temp;
int a;
scanf("%d",&a);
for(temp=1.0;fabs(temp-a/(temp*temp))>=1e-6;)
//temp-a/(temp*temp)=0时 temp为a的立方根

全部展开

#include
#include
void main()
{
float temp;
int a;
scanf("%d",&a);
for(temp=1.0;fabs(temp-a/(temp*temp))>=1e-6;)
//temp-a/(temp*temp)=0时 temp为a的立方根
{
temp=(temp+a/(temp*temp))/2;
//temp跟a/(temp*temp))/2两者必定一个大于a的立方根,一个小于a的立方根
//求其平均值,不断逼近a的立方根
//也可以用temp=(temp+temp+a/(temp*temp))/3来迭代
}
printf("%f\n",temp);
}

收起

罗尔定理(Rolle 定理) 罗尔定理示意图
  http://baike.baidu.com/view/398971.htm
设函数f(x)在闭区间[a,b]上连续(其中a不等于b),在开区间(a,b)上可导,   且f(a)=f(b),那么至少存在一点ξ∈(a、b),使得 f'(ξ)=0。   罗尔定理是以法国数学家罗尔的名字命名的。...

全部展开

罗尔定理(Rolle 定理) 罗尔定理示意图
  http://baike.baidu.com/view/398971.htm
设函数f(x)在闭区间[a,b]上连续(其中a不等于b),在开区间(a,b)上可导,   且f(a)=f(b),那么至少存在一点ξ∈(a、b),使得 f'(ξ)=0。   罗尔定理是以法国数学家罗尔的名字命名的。

收起