标签:md bg 10000 temp ed 方根 include Acwing790 小数
Acwing790.数的三次方根
题解
做法一:通过二分运算到符合精度要求
#include <iostream>
#include <cstdio>
using namespace std;
#define f 1e-8
int main()
{
double x;
cin >> x;
double bg = -10000, ed = 10000, md, temp;
while(ed-bg > f){
md = (bg+ed)/2;
temp = md*md*md;
if(temp >= x)
ed = md;
else
bg = md;
}
printf("%.6lf\n",md);
return 0;
}
做法二:进行多次循坏,达到精度要求
#include <iostream>
#include <cstdio>
#include <cmath>
using namespace std;
#define f 1e-6
int main()
{
double x;
cin >> x;
double bg = -10000, ed = 10000, md, temp;
for(int i = 0; i < 100; ++i){
md = (bg+ed)/2;
temp = pow(md,3);
if(temp >= x)
ed = md;
else
bg = md;
}
printf("%.6lf\n",md);
return 0;
}
标签:md,bg,10000,temp,ed,方根,include,Acwing790,小数 来源: https://www.cnblogs.com/czy-algorithm/p/16243932.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。