AcWing 790. 数的三次方根

心已入冬 提交于 2020-01-13 02:28:43

原题链接

问题描述:

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

数据范围:

  −10000n10000

分析:

从题意可知,在数据范围内枚举即可得n的三次方根是。但n是浮点数,它的三次方根也是浮点数,浮点数在数轴上稠密分布,所以只能用二分的思想无限逼近求得答案。

代码:

 1 #include<iostream>
 2 using namespace std;
 3 int main(){
 4     double n;
 5     cin>>n;
 6     double l=-10000,r=10000;
 7     double mid;
 8     while(r-l>1e-8){
 9         mid=(l+r)/2;
10         if(mid*mid*mid<n)l=mid;
11         else r=mid;
12     }
13     printf("%.6lf",mid);
14     return 0;
15 }

 

 

  

  

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!