AC.790 数的三次方根 | 浮点二分
AC.790 数的三次方根
题目描述
\(给定一个浮点数n,求它的三次方根。\)
输入格式
\(共一行,包含一个浮点数n。\)
输出格式
\(共一行,包含一个浮点数,表示问题的解。 注意,结果保留 6 位小数。\)
数据范围
\(−10000≤n≤10000\)
输入样例
1000.00
输出样例
10.000000
代码
\(如果要求保留6位小数,那么while循环的条件是r-l>1e-8\)
\(如果要求保留4位小数,那么while循环的条件是r-l>1e-6\)
#include<iostream>
#include<iomanip>
using namespace std;
#define ios_base \
ios::sync_with_stdio(false);\
cin.tie(nullptr),cout.tie(nullptr)
int n;
int main()
{
ios_base;
cin>>n;
//int l=-100,r=100;
double l=-100,r=100;
while (r-l>1e-8)
{
//int mid=l+r>>1;
double mid=(l+r)/2;
if(mid*mid*mid>=n)
{
r=mid;
}else{
l=mid;
}
}
cout<<fixed<<setprecision(6)<<l<<'\n';
return 0;
}
posted on 2023-04-22 18:25 ShinnyBlue 阅读(6) 评论(0) 编辑 收藏 举报