给定一个浮点数n,求它的三次方根(浮点二分)

给定一个浮点数n,求它的三次方根

输入格式:

浮点数n.

输出格式:

浮点数,保留6位小数。

数据范围

-10000<=n<=10000

输入样例

1000.00

输出样例:

10.000000

对答案进行浮点二分,eps的精度应该为答案的后两位

#include<iostream>
using namespace std;
const double eps=1e-8;
double ans;
//结果保留六位小数,这里的eps要精确到8位小数 
int main()
{
	double n;
	cin>>n;
	double l=-1e4,r=1e4;
	while(r-l>eps)
	{
		double mid=(l+r)/2.0;
		if(mid*mid*mid>=n)
		{
			ans=mid;
			r=mid;
		}
		else l=mid;
	}
	printf("%.6f",ans);
	
	return 0;
}


版权声明:本文为m0_63363129原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。