近似数算术运算的误差和有效数位

本文详细解析了近似数在算术运算中的误差计算公式,包括加减、乘除、乘方与开方及对数运算的有效数位保留原则。通过实例展示了如何根据原近似数的有效数字位数来确定计算结果的精度。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

近似数算术运算的误差和有效数位

  1. 近似数算术运算的误差

给定函数 u = f ( x , y ) u=f(x,y) u=f(x,y),设 x , y x,y x,y分别为 x ∗ , y ∗ x^*,y^* x,y的近似值,则绝对误差为
e ( u ) = f ( x ∗ , y ∗ ) − f ( x , y ) ≈ ∂ f ( x , y ) ∂ x ( x ∗ − x ) + ∂ f ( x , y ) ∂ y ( y ∗ − y ) e(u)=f(x^*,y^*)-f(x,y)\approx \frac{\partial f(x,y)}{\partial x}(x^*-x)+\frac{\partial f(x,y)}{\partial y}(y^*-y) e(u)=f(x,y)f(x,y)xf(x,y)(xx)+yf(x,y)(yy)

e ( u ) = ∂ f ( x , y ) ∂ x e ( x ) + ∂ f ( x , y ) ∂ y e ( y ) (3) e(u)=\frac{\partial f(x,y)}{\partial x}e(x)+\frac{\partial f(x,y)}{\partial y}e(y) \tag{3} e(u)=xf(x,y)e(x)+yf(x,y)e(y)(3)
而相对误差为 e r ( u ) = e ( u ) u ≈ ∂ f ( x , y ) ∂ x e ( x ) u + ∂ f ( x , y ) ∂ y e ( y ) u e_r(u)=\frac{e(u)}{u}\approx \frac{\partial f(x,y)}{\partial x}\frac{e(x)}{u}+\frac{\partial f(x,y)}{\partial y}\frac{e(y)}{u} er(u)=ue(u)xf(x,y)ue(x)+yf(x,y)ue(y),即
e r ( u ) = ∂ f ( x , y ) ∂ x x u e r ( x ) + ∂ f ( x , y ) ∂ y y u e r ( y ) (4) e_r(u)=\frac{\partial f(x,y)}{\partial x}\frac{x}{u}e_r(x)+\frac{\partial f(x,y)}{\partial y}\frac{y}{u}e_r(y) \tag{4} er(u)=xf(x,y)uxer(x)+yf(x,y)uyer(y)(4)
由(3)、(4)两式可得到两个近似数进行算术运算的计算公式为:
e ( x + y ) = e ( x ) + e ( y ) , e r ( x + y ) = x x + y e r ( x ) e ( x − y ) = e ( x ) − e ( y ) , e r ( x − y ) = x x − y e r ( x ) + y x − y e r ( y ) e ( x y ) ≈ y ⋅ e ( x ) − x ⋅ e ( y ) y 2 , e r ( x y ) ≈ e r ( x y ) ≈ e r ( x ) − e r ( y ) ⋅ y ≠ 0 e(x+y)=e(x)+e(y),\quad e_r(x+y)=\frac{x}{x+y}e_r(x) \\ e(x-y)=e(x)-e(y),\quad e_r(x-y)=\frac{x}{x-y}e_r(x)+\frac{y}{x-y}e_r(y) \\ e(\frac{x}{y})\approx \frac{y·e(x)-x·e(y)}{y^2},\quad e_r(\frac{x}{y})\approx e_r(\frac{x}{y})\approx e_r(x)-e_r(y)·y\neq 0 e(x+y)=e(x)+e(y),er(x+y)=x+yxer(x)e(xy)=e(x)e(y),er(xy)=xyxer(x)+xyyer(y)e(yx)y2ye(x)xe(y),er(yx)er(yx)er(x)er(y)y=0

  1. 近似数算运算的有效数位

1)加减运算

近似数进行加减运算时,把其中小数位数较多的数四舍五入,使其比小数位数最少的数多一位小数,计算结果保留的小数位数与原近似数中小数位数最少者相同。例如:
x = 2.718 , y = 3.40823 x + y ≈ 2.718 + 3.4082 ≈ 6.126 x − y ≈ 2.718 − 3.4082 ≈ − 0.690 x=2.718,y=3.40823 \\ x+y\approx 2.718+3.4082\approx 6.126 \\ x-y\approx 2.718-3.4082\approx -0.690 x=2.718,y=3.40823x+y2.718+3.40826.126xy2.7183.40820.690
2)乘除运算

近似数进行乘除运算时,各因子保留的位数应比有效数字位数最少者的位数多一位,所得结果的有效位数字与原近似数中有效数字位数最少者的位数最多少一位。例如:
x = 2.501 , y = 1.2 x × y = 2.50 × 1.2 ≈ 3.0 x ÷ y = 2.50 ÷ 1.2 ≈ 2.1 x=2.501,y=1.2 \\ x\times y = 2.50\times 1.2 \approx 3.0\\ x\div y=2.50\div 1.2 \approx 2.1 x=2.501,y=1.2x×y=2.50×1.23.0x÷y=2.50÷1.22.1
3)乘方与开方运算

近似数在进行乘方与开方运算时,原来近似数有几位有效数字,计算结果仍然保留几位有效数字。例如
x = 1.2 x 2 ≈ 1.4 , x ≈ 1.1 x=1.2 \\ x^2\approx 1.4,\quad \sqrt x\approx 1.1 x=1.2x21.4,x 1.1
4)对数运算

近似数在进行对数运算时,所取对数的位数与其真数的有效数字位数相同。例如:
l g 2.718 ≈ 0.4343 , l g 0.0618 ≈ − 1.21 lg2.718\approx 0.4343 , \quad lg0.0618\approx -1.21 lg2.7180.4343,lg0.06181.21
在实际计算过程中,中间计算结果应比上述各法则规定的位数多一位,在进行最后一次计算时这一位要进行四舍五入。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值