《计算方法》习题答案第一章数值计算中的误差1.什么是计算方法?(狭义解释)答:计算方法就是将所求的的数学问题简化为一系列的算术运算和逻辑运算,以便在计算机上编程上机,求出问题的数值解,并对算法的收敛性、稳定性和误差进行分析、计算。2.一个实际问题利用计算机解决所采取的五个步骤是什么?答:一个实际问题当利用计算机来解决时,应采取以下五个步骤:实际问题→建立数学模型→构造数值算法→编程上机→获得近似结果4.利用秦九韶算法计算多项式4)(53xxxxP在3x处的值,并编程获得解。解:400)(2345xxxxxxP,从而10-101-4-3-39-2472-2191-38-2473-223所以,多项式4)(53xxxxP在3x处的值223)3(P。5.叙述误差的种类及来源。答:误差的种类及来源有如下四个方面:(1)模型误差:数学模型是对实际问题进行抽象,忽略一些次要因素简化得到的,它是原始问题的近似,即使数学模型能求出准确解,也与实际问题的真解不同,我们把数学模型与实际问题之间存在的误差称为模型误差。(2)观测误差:在建模和具体运算过程中所用的一些原始数据往往都是通过观测、实验得来的,由于仪器的精密性,实验手段的局限性,周围环境的变化以及人们的工作态度和能力等因素,而使数据必然带有误差,这种误差称为观测误差。(3)截断误差:理论上的精确值往往要求用无限次的运算才能得到,而实际运算时只能用有限次运算的结果来近似,这样引起的误差称为截断误差(或方法误差)。(4)舍入误差:在数值计算过程中还会用到一些无穷小数,而计算机受机器字长的限制,它所能表示的数据只能是一定的有限数位,需要把数据按四舍五入成一定位数的近似的有理数来代替。这样引起的误差称为舍入误差。6.掌握绝对误差(限)和相对误差(限)的定义公式。答:设*x是某个量的精确值,x是其近似值,则称差xxe*为近似值x的绝对误差(简称误差)。若存在一个正数使xxe*,称这个数为近似值x的绝对误差限(简称误差限或精度)。把绝对误差e与精确值*x之比***xxxxeer称为近似值x的相对误差,称*x为近似值x的相对误差限re,由于真值*x是未知的,所以常常用xexxxer*来表示相对误差,于是相对误差可以从绝对误差求出。7.近似值的规格化表示形式如何?答:一般地,对于一个精确值*x,其近似值x的规格化形式为mpxxxx10.021,其中),2,1(9,2,1,0,01pixxi,p为正整数,m为整数。8.有效数字的概念是什么?掌握有效数字与误差的关系。答:若近似值x的(绝对)误差限是它的某一位的半个单位,也就是说该近似值准确到这一位,且从该位起直到前面第一个非零数字为止的所有数字都称为有效数字。若近似值x的(绝对)误差限为nmxxe1021*,则称x为具有n位有效数字的有效数,或称它精确到nm10位,其中的每一位数字nxxx,,21都是x的有效数字。设精确值*x的近似值x的规格化形式为mpxxxx10.021,若x具有n位有效数字,则其相对误差限为nrxe111021;反之,若x的相对误差限为nrxe1110)1(21,则x至少有n位有效数字。9.下列各数都是对真值进行四舍五入后获得的近似值,试分别写出它们的绝对误差限,相对误差限和有效数字的位数。(1)024.01x(2)4135.02x(3)50.573x(4)600004x(5)55108x;解:(1)0005.01*1xxe;0021.0*xexxxer;有三位有效数字。(2)00005.02*2xxe;000121.0*xexxxer;有四位有效数字。(3)005.03*3xxe;000087.0*xexxxer;有四位有效数字。(4)5.04*4xxe;0000084.0*xexxxer;有五位有效数字。(5)5.05*5xxe;000000625.0*xexxxer;有六位有效数字。10.为了使19的相对误差0.1%,问至少应取几位有效数字?解:由19的首位数是4.设近似数*x有n位有效数字,由定理4.1可知,相对误差001.010421)(1*nrxe,解得097.3n,即取4位有效数字,近似数的相对误差不超过0.1%。11.已知33,3100,1150)(*2xxxxxPy,计算)3100(*py及)33(Py,并求x和y的相对误差。解:55555.51150)3100()3100()3100(2*py281150)33()33()33(2Py333.0)(*xxxe0101.0)()(xxexer44444.22)(*yyye801587.0)()(yyeyer12.写出误差估计的一般公式(以二元函数),(yxfz为例)。解:二元函数),(yxfz的绝对误差:)(|)(|)(),(),(yeyfxexfzeyxyx二元函数的相对误差:zyeyfzxexfzzezeyxyxr)(|)(|)()(),(),()(|)(|),(),(yeyfzyxexfzxryxryx13.用电表测得一个电阻两端的电压和流过的电流范围分别为VV2220,AI1.010,求这个电阻的阻值R,并估算其绝对误差和相对误差。解:2)(Ve,1.0)(Ie,又2,1,IVIRIVRIVR。所以:42.01.01002202101)(|)(|)(|)(|)(),(),(),(),(IeIRVeVRIeIRVeVRReIVIVIVIV21099.1)()(RReRer。14.若01.045.0,01.003.1*2*1xx,计算22121xexy的近似值,并估计)(ye及其上界。解:45.0221)03.1(ey)(21))(()21()21()(2*22*21*11*11*1*xxxxeexxxxexexyyye),(,01.0211006.2)(21))((*2221*11*12*2xxeeexxxxxx15.已测得某场地长为ml110,宽d的值为md80,已知mllle2.0)(*,mddde1.0)(*,试求面积lds的绝对误差限和相对误差限。解:由lds,ldsdls,,mllle2.0)(*,mddde1.0)(*。可得:301.0802.0110)(|)(|)(|)(|)(),(),(),(),(dedslelsdedslelssedldldldl3104.3)()(sseser。16.掌握二元函数的加、减、乘、除和开方运算的绝对误差和相对误差估计公式。解:(1)加、减运算:由于1/xyx,1/,1/,1/yyxxyxyyx,所以|||/|||/|||,//,,//,yeyxyxeyxxyxeyeyxyxeyxxyxeyexeyxeyeyxyxeyxxyxeyexeyxerrrrrrrrr从而有(2)乘法运算:由于,xyxyyxxy,所以yexexyeyxexyerrr,xye,从而|||||||||yexxeyxye(3)除法运算:由于2)(,1)(yxyyxyxyx,所以)()(1)(2yeyxxeyyxe,)()()(yexeyxerrr(4)乘方及开方运算:由于1nnnxxx,所以xnexexenxxernrnn,117.求方程01562xx的两个根,使它至少具有4位有效数字(982.27783)。解:782.55982.272812114)56(5621x017863.0782.55112xcx19.求方程01162xx的较小正根,要求有3位有效数字。解:937.15937.7812114)16(1621x062747.0937.15112xcx所以较小正根为062747.02x。20.设41010,,2,1,0,ndxexIxnn。(1)证明:4110,,2,1,0,nnIeInn;(2)给出一个数值稳定的算法,并证明算法的稳定性。(1)证明:11011010nxnxnxnnnIexdenxeedxdxexI(2))(11nnIenI设nnnIIe*,则nnnnnnnnnnenIIeenIIeenIIe1110*0022*221*11当n无限大时,ne越小,所以该算法稳定。21.用递推算法计算积分1010,2,1,0,41ndxxxInn,并验证算法的数值稳定性。解:110110110114141)41(4141441nnnnnnnIndxxxdxxdxxxxxI设0*00IIe,则01010*1010022*2201*11414141eIIeeIIeeIIe所以该算法是稳定的。22.设计一个计算362412163)(xxxxf的最小计算量的算法。解:24121212442362412163163)(xxxxxxxxxxxxxf23.什么是数值稳定的算法?数值计算应遵循的六条规则是什么?答:一个算法如果原始数据有误差(扰动),而计算过程中舍入误差不增长或增长可以控制,则称此算法是数值稳定的。否则,称此算法是数值不稳定的。数值计算应遵循的六条规则是:(1)选用数值稳定的算法(计算公式);(2)尽量避免两个相近数相减;(3)尽量避免用绝对值很大的数作乘数;(4)尽量避免用绝对值很小的数作除数;(5)防止大数“吃掉”(或“淹没”)小数(即合理安排运算顺序);(6)简化计算步骤,减少运算次数。第二章非线性方程的数值解法1.叙述零点定理的内容。答:设函数)(xf在闭区间],[ba上连续且0)()(bfaf,则存在),(*bax使0)(*xf,即)(xf在区间),(ba内存在实的零点,称区间],[ba为方程的有根区间。2.方程求根的两个步骤是什么?确定方程有根区间的方法有哪些?答:第一步确定方程0)(xf的有根区间。第二步近似根的精确化。确定方程有根区间的方法有两种:作图法和逐步搜索法。3.利用作图法确定方程01)(3xxxf的有根区间。解:由于,05128)2(,01)0(ff于是,在区间)2,0(内至少有一个根,取步长5.0h向右进行根的搜索,即计算)5.1(),0.1(),5.0(fff的值得到0)5.1(,0)0.1(,0)5.0(fff,从而,原方程的有根区间缩小为)5.1,1(4.利用逐步搜索法确定方程0343)(23xxxxf的有根区间。解:由于,05)1(,03)0(ff于是,方程在)0,1(内至少有一个实根,所以,从1x,取步长5.0h向右进行根的搜索,即计算)5.0(f得到081)5.0(f,从0xy111)(3xxxf而,原方程的有根区间缩小为)21,1(。5.确定方程010423xx的有根区间。解:由于函数104)(23xxxf的定义域为,