博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
求解方程
阅读量:4048 次
发布时间:2019-05-25

本文共 760 字,大约阅读时间需要 2 分钟。

这个二分 很好啊!

题目:

Description
现给出一个方程式如下:

8*x^4 + 2*x^2 + 7*x^3 + 3*x + 6 == Y

知道了一个实数Y值,问是否存在一个实数x使得等式成立,并且要求0<=x<=100.

Input

第一行给出一个整数T(1 <= T <= 100),表示有T组数据。

每组给出一个实数Y。(fabs(Y) <= 1e10);

Output

输出x,答案精确到小数点后4位。
如果无解则输出”No solution!”。

#include 
double cul(double x){ return 8*x*x*x*x+7*x*x*x+2*x*x+3*x+6;}int main (){ double l,r,m,y; int t; scanf("%d",&t); while(t--) { scanf("%lf",&y); l=0; r=100; if(y<6||y>cul(100))printf("No solution!\n"); else if(y==6)printf("0.0000\n"); else { while(r-l>0.0000000001) { m=(r+l)/2; if(cul(m)>y) r=m; else l=m; } printf("%.4lf\n",m); } } return 0;}

转载地址:http://yjbci.baihongyu.com/

你可能感兴趣的文章
Visual Studio 2010:C++0x新特性
查看>>
drwtsn32.exe和adplus.vbs进行dump文件抓取
查看>>
cppcheck c++静态代码检查
查看>>
在C++中使用Lua
查看>>
一些socket的编程经验
查看>>
socket编程中select的使用
查看>>
GitHub 万星推荐:黑客成长技术清单
查看>>
可以在线C++编译的工具站点
查看>>
关于无人驾驶的过去、现在以及未来,看这篇文章就够了!
查看>>
所谓的进步和提升,就是完成认知升级
查看>>
为什么读了很多书,却学不到什么东西?
查看>>
长文干货:如何轻松应对工作中最棘手的13种场景?
查看>>
如何用好碎片化时间,让思维更有效率?
查看>>
No.147 - LeetCode1108
查看>>
No.174 - LeetCode1305 - 合并两个搜索树
查看>>
No.175 - LeetCode1306
查看>>
No.176 - LeetCode1309
查看>>
No.182 - LeetCode1325 - C指针的魅力
查看>>
mysql:sql alter database修改数据库字符集
查看>>
mysql:sql truncate (清除表数据)
查看>>