欢迎光临散文网 会员登陆 & 注册

S9G7 平方根的估算

2021-05-25 20:10 作者:学用数学  | 我要投稿

根号2的近似值 1.414... 要求得值可近似值可用十分逼近法,但这个计算量偏大,这次就用 Geogebra 来自动执行根号2的估算过程。

任务一  十分逼近法

说明:在表格区A2输入1,A3输入=A2+1,拖拉复制到10;B列记录A列平方的结果,B2输入=A2*A2,拖拉复制至100;C列记录增加0.1的结果,在C1输入0.1,C2输入1,C3输入=C2+C$1;复制B列到D列,得到C列对应的平方,在E列、G列、I列依次增加0.01、0.001、0.0001,F列、H列、J列记录E列、G列、I列的平方。

操作:

A3=A2+1

B2=A2*A2

#估算第1位小数

C1=0.1,   C2=1,     C3=C2+C$1

D2=C2*C2

#估算第2位小数

E1=0.01,   E2=1.4,   E3=E2+E$1

F2=E2*E2

#估算第3位小数

G1=0.001, G2=1.41,  G3=G2+G$1

H2=G2*G2

#估算第4位小数

I1=0.0001,  I2=1.414,   I3=I2+I$1

J2= I2*I2

 

任务二 用CountIf自动更新

说明:利用CountIf自动更新无理数的近似值,为统计D列有多少个数比被开方数小,于是在D1输入=CountIf(k<n,n,D2:D11)-1 ,为更新数字,在E2输入=C2+C1*D1,依次把D1公式复制到F1、H1、J1,E2公式复制到C2、G2、I2,最后创建[更新]按钮,加上文本显示.

操作:

n=2

输入框输入根号,关联到[n]

D1=CountIf(k<n,n,D2:D11)-1 

F1=CountIf(k<n,n,F2:F11)-1 

H1=CountIf(k<n,nH2:H11)-1 

J1=CountIf(k<n,n,J2:J11)-1 

E2=C2+C1*D1

C2=A2+A1*B1

G2=E2+E1*F1

I2=G2+G1*H1

建立[更新]按钮     UpdateConstruction()

输入文本

除了建立[更新]按钮之外,还可以设置滑动条的脚本如下:


小结


Geogebra 的试算表很适合做大量有规律的运算。对于这个十分逼近法的流程,就很适合用试算表来处理。要让这个计算可以自动化,就需要一些小巧思,在此节主要是利用 CountIf 来判断。而根号二的估计除了使用十分逼近法外,也有种二分逼近法,每次取中间值来做判断。鼓励大家可尝试来改写一个二分逼近法的版本。


相关链接

【GGB】https://www.geogebra.org/classic/uub2xcms

【Bili】https://www.bilibili.com/video/BV1vQ4y1R7n5

【youtube】https://www.youtube.com/playlist?list=PLXH05kw-i_5K4LNUB8Bh8q8UM-2RgMb0Q


S9G7 平方根的估算的评论 (共 条)

分享到微博请遵守国家法律