8.二分查找拓展-求任意次根号下

8.二分查找拓展-求任意次根号下

例如求根号2=? 等价于 x²=2
故用二分法x无限逼近令其=2

#include <bits/stdc++.h>
using namespace std;
/*
例如求根号2=?  等价于  x2=2
故用二分法无限逼近令其=2 
*/
const double eps=1e-5;      //这里是精确到多少位
double genhao(double x,double zuo,double you)  //如果x=2  就是求根号2 zuo you分别是x左右两边近似数 
{
	double mid;
	while(you-zuo>eps)
	{
		mid=(zuo+you)*1.0/2;
		if(mid*mid>2) you=mid;  //这里mid*mid代表平方,如果求三次根号下则mid*mid*mid 以此类推
		else zuo=mid;	
	}	
	return mid;
} 
int main()
{
	cout<<genhao(2,1,2);
	return 0;
}

测试样例是求根号2
在这里插入图片描述

发布了33 篇原创文章 · 获赞 33 · 访问量 7065
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 游动-白 设计师: 上身试试

分享到微信朋友圈

×

扫一扫,手机浏览