“二分法”求二元方程的解
- 格式:docx
- 大小:8.62 KB
- 文档页数:2
二分法二元论二分法是一种常用的问题求解方法,也是一种用于数据处理和分析的技术。
二元论则是一种哲学思想,主张事物的存在和发展是由两个相互对立的方面所引起的。
本文将介绍二分法和二元论的概念、应用和影响。
一、二分法的概念与应用1. 二分法的概念二分法,又称二分查找或折半查找,是一种高效的搜索算法。
它的基本思想是将已排序的数据集合分成两个部分,通过比较目标值和中间元素的大小关系,再决定目标值在哪个部分中继续搜索,直到找到目标值或者确认不存在。
2. 二分法的应用二分法能够提高问题求解的效率,广泛应用于计算机科学、数学、物理学等领域。
例如,在计算机算法中,二分法可用于查找某个元素在有序数组中的位置;在图像处理中,二分法可用于图像的二值化处理;在优化问题中,二分法可用于寻找问题的最优解等。
二、二元论的概念与影响1. 二元论的概念二元论是指一种哲学思想,认为事物的存在和发展是由两个相互对立的方面相互作用而引起的。
它强调对立面的辩证关系,认为矛盾是事物发展的源泉,通过矛盾的斗争和转化,事物得以发展。
2. 二元论的影响二元论的思想在不同领域产生了深远的影响。
在哲学思想上,二元论为解释和分析事物的矛盾和发展提供了理论基础,丰富了辩证唯物主义的思想内容。
在社会科学中,二元论的观点被应用于解析社会存在的矛盾,推动社会变革和进步。
在自然科学中,二元论的思路启发了科学家们对自然界复杂系统的研究和理解。
三、二分法与二元论的比较与联系1. 比较二分法和二元论在概念和应用上有所区别。
二分法是一种求解问题的方法,侧重于将问题分为两个部分并进行比较搜索。
而二元论是一种哲学思想,关注事物存在和发展时的辩证关系和矛盾。
2. 联系尽管二分法和二元论在概念上有所不同,但它们也存在一些联系。
二分法的应用中,通过将问题分解为两个部分,涉及矛盾、对立和辩证的思考方式。
这与二元论的核心观点是一致的。
二分法可以被视为二元论在问题求解领域中的应用之一。
四、二分法与二元论的启示1. 杜绝二分法产生的偏颇尽管二分法在问题求解中具有高效性和实用性,但它也可能导致对事物的过于简化和二元化。
用二分法求方程的近似解例析二分法的解题原理是利用前面的中间值定理,是一种求方程根近似值的具体方法.下面举例说明二分法的解题思路.例1 证明方程x 3-3x +1= 0在区间(1,2)内必有一根,并求出这个根的近似值(精确到0.01).解:令()f x = x 3-3x +1,则()f x 在区间[1,2]上的图象是一条连续不断的曲线. ∵(1)f =1-3+1=-1<0,(2)f = 8-6+1 = 3>0,∴(1)f ·(2)f <0,∴函数()f x 在区间(1,2)内必有一零点,∴方程x 3-3x +1= 0在区间(1,2)内必有一根x 0.取区间(1,2)的中点x 1= 1.5,用计算器算得(1.5)f =-0.125.因为(1.5)f ·(2)f <0,所以x 0∈(1.5,2).再取(1.5,2)的中点x 2= 1.75,用计算器算得(1.75)f =1.109375.因为(1.5)f ·(1.75)f <0,所以x 0∈(1.5,1.75).又取(1.5,1.75) 的中点x 3= 1.625,用计算器算得(1.625)f =0.416015625.因为(1.5)f ·(1.625)f <0,所以x 0∈(1.5,1.625).取(1.5,1.625)的中点x 4= 1.5625,用计算器算得(1.5625)f = 0.127197265625.因为(1.5)f ·(1.5625)f <0,所以x 0∈(1.5,1.5625).取(1.5,1.5625)的中点x 5=1.53125时,用计算器算得(1.53125)f =-0.003387451171875.因为(1.53125)f ·(1.5625)f <0,所x 0∈(1.53125,1.5625). 取(1.53125,1.5625)的中点x 6=1.546875时,用计算器算得(1.546875)f =0.060771942138671875.因为(1.53125)f ·(1.546875)f <0,所x 0∈(1.53125,1.546875).同理,可算得(1.53125)f ·(1.5390625)f <0,x 0∈(1.53125,1.5390625); (1.53125)f ·(1.53515625)f <0,x 0∈(1.53125,1.53515625);又当取(1.53125, 1.53515625)的中点x 9=1.533203125时,(1.53125)f ·(1.533203125)f <0,即x 0∈(1.53125,1.533203125).由于|1.53125-1.533203125| = 0.001953125<0.01,此时区间(1.53125,1.533203125)的两个端点精确到0.01的近似值都是1.53,所以原方程精确到0.01的近似解为1.53.说明一:虽然|1.53125-1.5390625| = 0.0078125<0.01,但是,在区间(1.53125,1.5390625)的两个端点精确到0.01的近似值是两个,即1.53和1.54,与一个近似根不符.因此,类似于此种情况要一边分析探索,一边求解讨论,直到求出符合题意的唯一解为止.说明二:为能够将零点所在的范围尽量缩小,在一定的精度下,还可以采用逐步分割含根区间使成许多小区间,并以次确定()f x 的分点处的符号,即可以任意地缩小含根区间而实现根的近似计算.还以此例说明如下:将[1,2]分成10等份,各分点为1.1;1.2;1.3;…;1.9,并逐个计算: (1.1)f =-0.969;(1.2)f =-0.872;(1.3)f =-0.703,(1.4)f =-0.456;(1.5)f =-0.125;(1.6)f = 0.296.由(1.5)f ·(1.6)f <0,可知方程的根位于(1.5,1.6)内.再将[1.5,1.6]分成10等份,求出:(1.51)f =-0.87049;(1.52)f =-0.048192;(1.53)f =-0.008423;(1.54)f = 0.52264. 由于(1.53)f ·(1.54)f <0,所以方程的根位于(1.53,1.54)内,取x = 1.53,其精确度已达0.01.显然,此种分割法与二分法其解题原理完全相同,只不过划分区间有所差异. 例2 借助计算器求方程0.8x -1= lnx 的近似解(精确到0.01).解:令y 1= 0.8x -1,y 2= lnx ,画出两个函数的图象,从图象中可以找到,方程0.8x -1= lnx 在区间(0,1)内必有一根x 0.设()f x =0.8x -1-lnx , 由于(0)f 没有意义,且(0.5)f = 0.5876>0,(1)f =-0.2<0,∴(0.5)f ·(1)f <0,∴方程0.8x -1= lnx 在区间(0.5,1)内必有一根x 0.取区间(0.5,1)的中点x 1= 0.75,用计算器算得(0.75)f = 0.1336>0,因为(0.75)f ·(1)f <0,所以x 0∈(0.75,1).再取(0.75,1)的中点x 2= 0.875,用计算器算得(0.875)f =-0.0438<0,因为(0.75)f ·(0.875)f <0,所以x 0∈(0.75,0.875).又取(0.75,0.875)的中点x 3= 0.8125,用计算器算得(0.8125)f = 0.0418>0,因为(0.8125)f ·(0.875)f <0,所以x 0∈(0.8125,0.875).取(0.8125,0.875)的中点x 4= 0.84375,用计算器算得(0.84375)f =-0.0017<0,因为(0.8125)f ·(0.84375)f <0,所以x 0∈(0.8125,0.84375).取(0.8125,0.84375)的中点x 5= 0.828125时,用计算器算得(0.828125)f = 0.0199>0,因为(0.828125)f ·(0.84375)f <0,所以x 0∈(0.828125,0.84375).y 1=0.8x取(0.828125,0.84375)的中点x 6= 0.8359375时,用计算器算得(0.8359375)f = 0.009>0,因为(0.8359375)f ·(0.84375)f <0,所x 0 (0.8359375,0.84375). 由于|0.84375-0.8359375| = 0.0078125<0.01,此时区间(0.8359375,0.84375)的两个端点精确到0.01的近似值都是0.84,所以原方程精确到0.01的近似解为0.84.说明:二分法的第一步可以结合函数的图象来初步判断根的分布区间;在解题过程中,只有区间端点的函数值异号才能使用二分法算下去.最终视函数值的绝对值的大小尽快逼近满足精确度要求的零点.。
用二分法求方程的近似解我今天说课的课题是方程的根与函数的零点,下面我从教材的分析、教法和学法、教学过程三个方面进行说课,首先我们来进行教材分析。
一、教材分析1、教材地位和作用方程的根与函数的零点是高中数学人教版必修1第三章第一节的内容,本节课是高中新课程的新增内容,它是求方程近似解的常用方法,体现了函数的思想以及函数与方程的联系。
在内容上衔接了上节函数的零点与方程的根的联系,并为数学3中算法内容的学习做了铺垫。
2、教学目标根据新课标标准要求及结合学生已有的认知结构,我确定本节课的教学目标为:(1)知识目标了解二分法的基本思想,能够借助计算器用二分法求相应方程的近似解(2)能力目标:通过对生产、生活实例的介绍,使学生体验逼近的思想和二分法的思想(3)情感目标:通过二分法的生活实例,使学生体会的数学的应用价值。
3、教学重点与难点本节课的教学重点是:理解二分法基本思想,掌握用二分法求方程近似解的步骤难点:对二分法概念的理解,求方程近似解一般步骤的概括和理解。
二、教学与学法本节课我采用情境教学法和自主探究法,并充分利用多媒体辅助教学.通过教师在教学过程中的点拨,启发学生通过主动观察、主动思考、自主探究来达到对知识的发现和学习。
本节课的内容是需要学生实际操作,因此,在学法上采用教师引导,学生自主探究,在实践中发现问题、理解问题和解决问题。
三、教学过程整个教学的流程分为创设情境,引入新课;发现问题,探求新知;示例练习,加深理解;巩固新知,反馈调控;归纳小结,布置作业6大块:1、创设情境,引入新课教师:(手拿一款手机)如果让你来猜这件商品的价格,你如何猜?学生1:先初步估算一个价格,如果高了再每隔10元降低报价;学生2:先初步估算一个价格,如果高了,再报一个价格;如果低了,就报两个价格和的一半;如果高了,再把报的低价与一半价相加再求其半,报出价格;如果低了,就把刚刚报出的价格与前面的价格结合起来取其和的半价,教师可以给学生评价,第一种方法比较慢,第二种方法比较好,那我们把这种方法运用到求一些特殊方程的近似解,引出课题。
二分法解决实际问题的过程二分法解决实际问题的过程一、引言在计算机科学中,二分法是一种通用的搜索算法,常用于解决实际问题。
它通过将问题分成两个部分,然后确定目标在哪个部分,并继续对该部分进行二分,最终找到目标或确定目标不存在。
本文将探讨二分法解决实际问题的过程,从简单到复杂、由浅入深,帮助读者全面理解这一算法。
二、基本原理1. 概念解释:二分法,也称为二分查找,是一种通过不断将范围缩小一半的方式来查找目标的方法。
它要求待查找的数组或列表是有序的。
2. 基本步骤:- 确定搜索范围:将数组或列表的起始位置和结束位置确定为搜索范围。
- 计算中点:将搜索范围分成两部分,计算中点的索引位置。
- 比较目标值与中点:将目标值与中点进行比较,确定目标可能在哪个部分。
- 缩小搜索范围:根据比较结果,将搜索范围缩小为可能存在目标的部分,并重复上述步骤,直到找到目标或确定目标不存在。
三、简单示例为了更好地理解二分法的过程,在这里我们举一个简单的示例。
假设有一个升序排列的数组,我们需要查找数组中是否存在某个特定的元素。
1. 确定搜索范围:将数组的起始位置设为0,结束位置设为数组长度减1。
2. 计算中点:将起始位置和结束位置相加除以2,得到中点的索引位置。
3. 比较目标值与中点:将目标值与中点位置的元素进行比较。
4. 缩小搜索范围:根据比较结果,如果目标值小于中点位置的元素,则将结束位置更新为中点位置减1;如果目标值大于中点位置的元素,则将起始位置更新为中点位置加1。
重复上述步骤,直到找到目标或确定不存在。
通过这个简单的示例,我们可以看到二分法的基本思路和步骤。
它的时间复杂度为O(log n),相较于线性搜索的时间复杂度O(n),二分法在大规模数据中有着显著的优势。
四、应用案例1.查找算法:二分法广泛应用于查找算法中,例如在有序数组中查找指定元素的位置。
2.分析数据:二分法还可以用于分析数据中的特定属性,例如找到最接近某个给定值的元素。
python二分法解方程Python二分法解方程在数学中,方程是一个数学等式,其中包含一个或多个未知量,我们的目标是找到这些未知量的值。
解方程是数学中的常见问题,其中许多方程无法通过代数方法求解。
在这种情况下,我们可以使用数值方法,如二分法,来逼近方程的解。
二分法是一种基于区间缩减的数值方法,它通过将问题分解为两个子问题来逼近方程的解。
具体来说,我们首先选择一个初始的区间,该区间包含方程的解。
然后,我们将区间一分为二,并确定解位于哪一半。
我们不断重复这个过程,直到找到方程的近似解。
在Python中,我们可以使用二分法来解方程。
下面是一个示例,演示了如何使用二分法来解方程x^2 - 4 = 0。
我们定义一个函数来计算方程的值:```pythondef equation(x):return x**2 - 4```然后,我们定义一个函数来实现二分法:```pythondef binary_search(a, b, equation, epsilon):while abs(a - b) > epsilon:midpoint = (a + b) / 2if equation(midpoint) == 0:return midpointelif equation(midpoint) > 0:b = midpointelse:a = midpointreturn (a + b) / 2```这个函数接受四个参数:初始区间的左端点a,右端点b,方程函数equation和误差范围epsilon。
它通过比较方程在区间中点的值来缩小区间,直到区间的长度小于误差范围为止。
最后,它返回区间的中点作为方程的近似解。
现在,我们可以使用这个函数来解方程x^2 - 4 = 0:```pythona = -10b = 10epsilon = 0.0001solution = binary_search(a, b, equation, epsilon)print("The solution to the equation x^2 - 4 = 0 is:", solution) ```运行这段代码,我们会得到方程的解:x = 2。
python二分法求解方程在Python中,可以使用二分法来求解方程。
二分法是一种寻找目标值的有效算法,可以用于不断缩小搜索范围,直到找到满足条件的解。
对于一个单调递增或递减函数f(x),我们可以通过以下步骤使用二分法来求解方程f(x) = 0的解:1. 确定搜索区间。
首先需要找到一个包含解的区间,可以通过观察函数的图像或者使用其他方法来确定一个大致的搜索范围。
2. 设置精度。
由于浮点数运算存在舍入误差,因此我们需要设置一个足够小的精度值来判断是否找到了解。
一般情况下,可以使用一个很小的数作为终止条件,例如0.00001。
3. 运用二分法进行搜索。
根据中值定理,如果f(x)在[a, b]上连续,且f(a)与f(b)异号,则存在一个c属于(a, b),使得f(c) = 0。
我们可以选择搜索区间的中点作为c的初始猜测值。
4. 判断中点是否为解。
计算中点的函数值f(c),如果f(c)的绝对值小于我们设置的精度,则认为c是解,算法结束。
否则,根据f(c)与f(a)或f(b)的符号关系,更新搜索区间。
5. 更新搜索区间。
如果f(c)与f(a)符号相同,则解位于[c, b]区间中,否则解位于[a, c]区间中。
更新搜索区间,将a或b的值重新设为c,重复步骤3和4,直到找到解或者搜索区间足够小。
下面是一个使用二分法求解方程的示例代码:```pythondef binary_search(f, a, b, precision):while (b - a) > precision:c = (a + b) / 2if f(c) == 0:return celif f(c) * f(a) < 0:b = celse:a = creturn (a + b) / 2# 定义需要求解的方程,例如求解x^2 - 4 = 0的解def equation(x):return x ** 2 - 4# 设置搜索区间和精度a = 0b = 10precision = 0.00001# 调用二分法函数求解方程result = binary_search(equation, a, b, precision)# 打印结果print("The solution is: ", result)```这个示例代码演示了如何使用二分法求解方程x^2 - 4 = 0的解。
用二分法求方程的近似解例析二分法的解题原理是利用前面的中间值定理,是一种求方程根近似值的具体方法.下面举例说明二分法的解题思路.例1 证明方程-3+1= 0在区间1,2内必有一根,并求出这个根的近似值精确到. 解:令= -3+1,则在区间[1,2]上的图象是一条连续不断的曲线.∵=1-3+1=-1<0,= 8-6+1 = 3>0,∴·<0,∴函数在区间1,2内必有一零点,∴方程-3+1= 0在区间1,2内必有一根.取区间1,2的中点= ,用计算器算得(1.5)f =-.因为(1.5)f ·<0,所以,2. 再取,2的中点= ,用计算器算得(1.75)f =.因为(1.5)f ·(1.75)f <0,所以,. 又取, 的中点= ,用计算器算得(1.625)f =.因为(1.5)f ·(1.625)f <0,所以,. 取,的中点= ,用计算器算得(1.5625)f = 0.因为(1.5)f ·(1.5625)f <0,所以,. 取,的中点=时,用计算器算得(1.53125)f =-.因为(1.53125)f ·(1.5625)f <0,所,.取,的中点=时,用计算器算得(1.546875)f = .因为(1.53125)f ·(1.546875)f <0,所,.同理,可算得(1.53125)f ·(1.5390625)f <0,,;(1.53125)f ·(1.53515625)f <0,,1;又当取,1的中点=时,(1.53125)f ·(1.533203125)f <0,即,.由于|-| = <,此时区间,的两个端点精确到的近似值都是,所以原方程精确到的近似解为.说明一:虽然|-| = <,但是,在区间,的两个端点精确到的近似值是两个,即和,与一个近似根不符.因此,类似于此种情况要一边分析探索,一边求解讨论,直到求出符合题意的唯一解为止.说明二:为能够将零点所在的范围尽量缩小,在一定的精度下,还可以采用逐步分割含根区间使成许多小区间,并以次确定的分点处的符号,即可以任意地缩小含根区间而实现根的近似计算.还以此例说明如下:将[1,2]分成10等份,各分点为;;;…;,并逐个计算:(1.1)f =-;(1.2)f =-;(1.3)f =-,(1.4)f =-;(1.5)f =-;(1.6)f = . 由(1.5)f ·(1.6)f <0,可知方程的根位于,内.再将[,]分成10等份,求出:(1.51)f =-;(1.52)f =-;(1.53)f =-;(1.54)f = .由于(1.53)f ·(1.54)f <0,所以方程的根位于,内,取 = ,其精确度已达. 显然,此种分割法与二分法其解题原理完全相同,只不过划分区间有所差异. 例2 借助计算器求方程-1= n 的近似解精确到.解:令= -1,= n ,画出两个函数的图象,从图象中可以找到,方程-1= n 在区间0,1内必有一根.设=-1-n ,由于没有意义,且(0.5)f = >0,=-<0, ∴(0.5)f ·<0,∴方程-1= n 在区间,1内必有一根. 取区间,1的中点= ,用计算器算得(0.75)f = >0,因为(0.75)f ·<0,所以,1. 再取,1的中点= ,用计算器算得(0.875)f =-<0,因为(0.75)f ·(0.875)f <0,所以,.又取,的中点= ,用计算器算得(0.8125)f = >0,因为(0.8125)f ·(0.875)f <0,1=x -所以,.取,的中点= ,用计算器算得(0.84375)f =-<0,因为(0.8125)f ·(0.84375)f <0,所以,.取,的中点= 时,用计算器算得(0.828125)f = >0,因为(0.828125)f ·(0.84375)f <0,所以,.取,的中点= 时,用计算器算得(0.8359375)f = >0,因为(0.8359375)f ·(0.84375)f <0,所,. 由于|-| = <,此时区间,的两个端点精确到的近似值都是,所以原方程精确到的近似解为.说明:二分法的第一步可以结合函数的图象来初步判断根的分布区间;在解题过程中,只有区间端点的函数值异号才能使用二分法算下去.最终视函数值的绝对值的大小尽快逼近满足精确度要求的零点.。
“二分法”求二元方程的解前面说到了用“精确迭代法”求两个数的最大公约数,这里的“二分法”也属于迭代法——近似迭代。
另外还有“牛顿迭代”也属于近似迭代。
思想:二分法属于数学问题,但为了说清楚问题就再说一下原理。
先取二元方程f(x)的两个初略解x1和x2,若f(x1)与f(x2)的符号相反,则方程f(x)=0在[x1,x2]区间至少有一个根;若f(x)在[x1,x2]区间单调,则至少有一个实根;所以取x3=(x1+x2)/2,并在x1和x2中舍去和f(x3)同号者,那么解就在x3和另外那个没有舍去的初略解组成的区间里;如此反复取舍,直到xn与xn-1之差满足要求时,那么xn便是方程f(x)的近似根。
所以有算法:while(误差>给定误差)if(f(x)==0)x就是根,不在迭代;else if(f(x)*f(x1)<0) /*这里的x相当于上面所说的x3*/x2=x;elsex1=x;例:用二分法求方程x2-2-x=0在[0,3]区间的根。
float f(float x){return (x*x-x-2);}#include<iostream.h>#include<math.h>main(){float x1=0,x2=3,x,root;const float err=.5e-5 //给定精度while(fabs(x1-x2)>err) //求根{if(f(x1)==0){root=x1;break;}if(f(x2)==0){root=x2;break;}x=(x1+x2)/2;if(f(x)==0){root=x;break;}if(f(x)*f(x1)<0)x2=x;elsex1=x;}root=x1;cout<<"The root is:"<<root<<endl; }。
二分法求方程一、引言在数学中,解方程是一个重要的问题。
对于一些简单的方程,可以通过代数方法来求解。
但是对于一些复杂的方程,代数方法可能无法得到精确解,需要使用数值方法来求解。
本文将介绍二分法求解方程的方法。
二、二分法原理二分法又称折半法,是一种在有序数组中查找某一特定元素的搜索算法。
其基本思想是:将有序数组从中间分开成两部分,如果要查找的元素比中间元素大,则在右半部分继续查找;如果要查找的元素比中间元素小,则在左半部分继续查找;如果要查找的元素恰好等于中间元素,则直接返回。
三、二分法求解方程步骤1. 确定区间首先需要确定一个包含根的区间[a, b]。
通常情况下,可以通过观察函数图像或者利用初值定理来确定一个大致的区间。
2. 求出区间中点将区间[a, b]从中点m=(a+b)/2处划分成两个子区间[a, m]和[m, b]。
3. 判断根所在子区间计算f(m)的值,并与0进行比较。
如果f(m)=0,则m即为方程的解;如果f(m)>0,则根在子区间[a, m]中;如果f(m)<0,则根在子区间[m, b]中。
4. 缩小区间根据上一步的判断结果,将包含根的子区间作为新的搜索区间,重复步骤2和步骤3,直到找到满足精度要求的解。
四、二分法求解方程示例假设要求解方程x^3-2x-5=0在[2, 3]内的一个近似解。
1. 确定区间观察函数图像可知,方程在[2, 3]内有且仅有一个实根。
2. 求出区间中点m=(a+b)/2=2.53. 判断根所在子区间f(m)=m^3-2m-5=-1.875<0,因此根在子区间[m, b]=[2.5, 3]中。
4. 缩小区间重复步骤2和步骤3:m=(a+b)/2=2.75f(m)=m^3-2m-5=1.015625>0,因此根在子区间[a, m]=[2, 2.75]中。
m=(a+b)/2=2.375f(m)=m^3-2m-5=-0.6484375<0,因此根在子区间[m, b]=[2.375, 2.75]中。
分法”求二元方程的解
前面说到了用“精确迭代法”求两个数的最大公约数,这里的“二分法”也属于迭代法——近似迭代。
另外还有“牛顿迭代”也属于近似迭代。
思想:二分法属于数学问题,但为了说清楚问题就再说一下原理。
先取二元方程f(x) 的两个初略解x1 和x2 ,若f(x1) 与f(x2) 的符号相反,则方程f(x)=0 在[x1 , x2]区间至少有一个根;若f(x)在[x1 , x2]区间单调,则至少有一个实根;所以取
x3=(x1+x2)/2 ,并在x1 和x2 中舍去和f(x3) 同号者,那么解就在x3和另外那个没有舍去的初略解组成的区间里;如此反复取舍,直到xn 与xn-1 之差满足要求时,那么xn 便是方程f(x) 的近似根。
所以有算法:
while( 误差>给定误差)
if(f(x)==0)
x 就是根,不在迭代;
else if(f(x)*f(x1)<0) /* 这里的x
相当于上面所说的x3*/
x2=x;
else
x1=x;
例:用二分法求方程x2-2-x=0 在[0 ,3]区间的
根。
float f(float x)
{return (x*x-x-2);}
#include<iostream.h>
#include<math.h> main()
{
float x1=0,x2=3,x,root;
//给定
const float err=.5e-5
精度
//求
while(fabs(x1-x2)>err)
根
{
if(f(x1)==0)
{root=x1;break;}
if(f(x2)==0)
{root=x2;break;}
x=(x1+x2)/2;
if(f(x)==0)
{root=x;break;}
if(f(x)*f(x1)<0)
x2=x;
else
x1=x;
}
root=x1; cout<<"The root is:"<<root<<endl; }。