欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

求平方根

程序员文章站 2024-03-17 16:43:22
...

求平方根

1.题目描述

求一个数的平方根,精度要求 e < 10^-6;

2.思路(二分法)

定义一个最小值left和最大值right,把一个数取一个中间值mid = left+(right-left)/2,然后平方,如果平方mid*mid大于该数值,就把中间值赋给最大值,否者就把中间值赋给最小值,一直循环,直到取到想要的精度为止

3.代码

//二分法 
double sqrt1(double x){
	double EPSINON = 0.00001;
	double left= 0.0;
	double right = x;
	double mid = left + (right -  left) / 2;
	while (fabs(mid*mid - x) > EPSINON){
		if (mid*mid > x){
			right= mid;
		}
		else{
			left= mid;
		}
		mid = left + (right -  left) / 2;
	}
	return mid;
}

上一篇: 吃糖【二分】

下一篇: 06:笨小猴