中国矿亚天整CHINAUNIVERSITYOFMININGANDTECHNOLOGY最后,为了使计算稳定性好要注意以下几个问题:P6-7(1)防止大数吃小数例在五位十进制计算机上计算下式的值1000A= 51234+Z8,0.1≤8,≤0.9i=l注:求和时从小到大相加,可使和的误差减小。例:按从小到大、以及从大到小的顺序分别计算1+2+3++40+109
CHINA UNIVERSITY OF MINING AND TECHNOLOGY 最后,为了使计算稳定性好要注意以下几个问题:P6-7 (1) 防止大数吃小数 1000 1 51234 0.1 0.9 i i i A δ δ = = + ≤≤ ∑ 例 在五位十进制计算机上计算下式的值 注:求和时从小到大相加,可使和的误差减小。 例:按从小到大、以及从大到小的顺序分别计算 1 + 2 + 3 + . + 40 + 10 9
中国矿亚大鉴CHINAUNIVERSITYOFMININGANDTECHNOLOGY的根。例:用单精度计算2-(10°+1)x+10°=0精确解x=10°,x,=1α算法1:利用求根公式x=-b±V-4ac2a在计算机内,109存为0.1×1010,1存为0.1×101。做加法时两加数的指数先向大指数对齐,再将浮点部分相加。即1的指数部分须变为1010,则:1=0.0000000001×1010,取单精度时就成为:109+1=0.10000000x1010+0000000 ×1010=0.10000000×1010大数吃小数-b+Vb2-4ac-b-Vb?-4acx=二=10°,=0=X=2a2a
CHINA UNIVERSITY OF MINING AND TECHNOLOGY 例:用单精度计算 的根。 (10 1 ) 10 0 2 9 9 x − + x + = 精确解 10 2 1 9 x1 = , x = " 算法1:利用求根公式 a b b ac x 2 4 2 − ± − = 在计算机内,10 9存为0.1 ×1010,1存为0.1 ×10 1。做加法 时两加数的指数先向大指数对齐,再将浮点部分相加。 即1 的指数部分须变为1010,则:1 = 0.0000000001 × 1010,取单精度时就成为: 10 9+1=0.10000000 ×1010+0.00000000 ×1010=0.10000000 ×1010 大数吃小数 0 2 4 10 , 2 4 2 2 9 2 1 = − − − = = − + − ⇒ = a b b ac x a b b ac x
中国矿亚大医CHINA UNIVERSITY OF MININGAND TECHNOLOGY-b-signb).Vb?-4ac=10°算法2:先解出x=2a10°c6再利用xx,==1X2109a.x
CHINA UNIVERSITY OF MINING AND TECHNOLOGY "算法2:先解出 再利用 9 2 1 10 2 ( ) 4 = − − ⋅ − = a b sign b b ac x 1 10 10 9 9 1 1 2 2 = = ⋅ ⋅ = ⇒ = a x c x a c x x
中国矿基大医CHINA UNIVERSITY OFMININGAND TECHNOLOGY(2)防止相近的数相减例 利用 f(x) ~ I(x+h)-f(x-h)求 f(x)= Vx在x=22h处的导数值。V2+h-V2-hVx+h-Vx-h解 f(x)~1f'(2) ~2h2h在4位机上取h=0.00011.4142-1.4142f'(2)0.00021精确值f(2):=0.353553一2V2
CHINA UNIVERSITY OF MINING AND TECHNOLOGY ( )( ) () , () 2 2 fx h fx h f x fx x x h 例 利用 求 在 +− − ′ ≈ = = h x h x h f x 2 ( ) + − − ′ ≈ h h h f 2 2 2 ( 2 ) + − − ′ ≈ 0.0002 1.4142 1.4142 ( 2 ) − f ′ ≈ 1 (2) 0.353553 2 2 精确值 f ′ = = 解 = 0 (2) 防止相近的数相减 处的导数值。 在 4位机上取 h=0.0001