找回密码
 立即注册
大科技语录:
查看: 5224|回复: 24

一个小把戏:教你笔算开根

[复制链接]
发表于 2009-4-26 17:36 | 显示全部楼层 |阅读模式
本帖最后由 永恒的贝多芬 于 2009-4-26 17:37 编辑

记得初中的时候,老师有一次上课时给我们演示了一下笔算开根,当时觉得很神奇。
后来高中的时候学二项式定理,突然感觉可以从这里下手,于是......就找到了这个开根的方法。
哈哈!

也许很多人知道,有的人会觉得无聊,但总有人需要的嘛。想起我高考的时候还用了一下的,帮我做对了一个选择题,嘻嘻。

言归正传——这个写法和除法差不多,具体算法见下:
例如算√5。
1、首先需要推算结果的整数部分。5开根号后是二点多,2*2=4,则约1;
2、这时与除法就不同了。此时在1后添两个0;
3、这时已经算出首位是2(此时是结果的整数部分,所以写2.)了,用2*20,得40;
4、为了除100最大化,40乘以2。此时,在2.后写2作为结果的第二位;
5、注意100减掉的不是80,而是80+(2的平方),这个2是上一步得出的结果2;
6、得16,添两个0;
7、用22*20,得440;
8、为了除1600最大化,440乘以3,得1320,将3写在2.2后,作为第三位;
9、1600减掉1320+(3的平方);
10、得271,添两个0;
11、用223*20,得4460;
12、为了除27100最大化,4460*6,得26760,将6写在2.23后;
13、27100-26760+(6的平方)得304,添两个0;
14、用2236*20,得44720,大于30400,故在2.236后添0,在30400后再添两个0;
15、用22360*20,得447200,为除3040000最大化,乘6;
16、如此往复......
计算器的结果:2.236067977499......

下面附上解析图,最后一步约7的话,发现相差不多,而且一般计算有这种精确度已经足够了。
理论上这样可以一直做下去,每一步得到的结果是精确的。

又,这种方法可以用在小数的开方上;开三次方的方法与之类似,不过我记得每步好像不止乘20,还要加两个结果,下面的要加三个零什么的,以前推过,太难算,就忘了;开四次方也是行的,不过更复杂......

嗯,这是一个小把戏。





op.207

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

评分

参与人数 2 +55 收起 理由
PROTON + 50 同意这种方法~~~~呵呵,以前把这个给遗忘了 ...
达芬奇的晚餐 + 5 我尝试过探讨这个方法

查看全部评分

发表于 2009-4-27 09:38 | 显示全部楼层
嗯,
笔算开方的方法初中时我们没讲过
但自己尝试过,很不错
没事的时候就计算着玩
只是有点繁琐.......
回复

使用道具 举报

发表于 2009-4-28 12:57 | 显示全部楼层
牛顿法其实也不错的.
回复

使用道具 举报

发表于 2009-4-29 01:10 | 显示全部楼层
大哥,这么古老的方法对我们高中生没多大用。
回复

使用道具 举报

发表于 2009-4-29 01:12 | 显示全部楼层
大哥,这么古老的方法对我们高中生没多大用。
回复

使用道具 举报

发表于 2009-4-29 01:13 | 显示全部楼层
大哥,这么古老的方法对我们高中生没多大用。
回复

使用道具 举报

发表于 2009-4-29 09:16 | 显示全部楼层
TO:死不回头
就算是没多大用,
那也可以作为课外了解的内容.......
那其实是很好的。
回复

使用道具 举报

 楼主| 发表于 2009-4-29 09:19 | 显示全部楼层
本帖最后由 永恒的贝多芬 于 2009-4-29 09:22 编辑
牛顿法其实也不错的.
liota 发表于 2009-4-28 12:57


嗯。关于牛顿法,我在这里说几句。

牛顿法,又称牛顿迭代法或切线法。其基本思想说白了就是把一个方程转化成x=f(x)的形式。取一个初值X0,代入f(x)中,得到的结果作为X1,再代入f(x)中,得到的结果作为X2......这样就能得到越来越精确的解。

对f(x)=0,我们可以得到一个迭代公式(这个公式的推导要用到Taylor公式,所以直接给出):
X(n+1)=Xn-f(Xn)/f'(Xn).

对于求√A,可以令f(x)=x2-A,则其迭代公式为:Xk+1=1/2(Xk+A/Xk)。


大哥,这么古老的方法对我们高中生没多大用。
死不回头 发表于 2009-4-29 01:10



嗯,我前面说过,总会有人需要的。
而且,我还是高中生的时候,我觉得这个方法还是很有用的(现在也是)。
另外,我发这个帖子的目的是激发大家对这种方法进行自己的推导,所以我特意强调了一下是学二项式的时候想到的,又提了句对开N次方的方法类似。所以,这不仅是一个方法介绍,更是一个思维训练题。我相信会有人提出更好、更简单的方法的。



op.213
回复

使用道具 举报

发表于 2009-4-29 12:57 | 显示全部楼层
有无实际作用并不重要,计算机能够开平方根背后也是靠这样的算法才能算到的。
重要的是能够引导大家的思考。
回复

使用道具 举报

发表于 2009-6-2 22:18 | 显示全部楼层
其实我们初中时老师告诉我, 只是当时不知道缘由!现在有点知道呢
回复

使用道具 举报

发表于 2009-6-2 22:28 | 显示全部楼层
为什么要乘以20呢?
回复

使用道具 举报

发表于 2009-6-2 23:28 | 显示全部楼层
还要加一点 ,假如数是个大数,或者有小数部分:你可以自小数点前后部分开始,每两位划一起....
例如sqrt(根号)(4225.365)可以化作42\25/.36\5
回复

使用道具 举报

发表于 2009-7-10 22:51 | 显示全部楼层
谢谢你 我一直想知道 转载了
回复

使用道具 举报

发表于 2009-7-10 23:43 | 显示全部楼层
初中问老师:为啥乘20?
老师说:以后有贝多芬教你,我就不教了……
现在问小贝:……
回复

使用道具 举报

发表于 2009-7-11 17:23 | 显示全部楼层
为什么要乘以20呢?
ZHL19910725 发表于 2009-6-2 22:28



我也想问,其他都看懂了,
回复

使用道具 举报

 楼主| 发表于 2009-7-12 13:33 | 显示全部楼层
看来大家都有追本溯源的探索精神嘛。

为方便叙述,用a.bcdefa……的形式表示小数。
我当时是这样想的:若√n=a.bcdef……,那么确定a之后,a、b满足(a+0.b)2+q=n,其中q为误差项。
展开就是:a2+2×a×0.b+(0.b)2+q=n.
确定b的那几步实际上就是把q算出来。20就是出于中间的一项。因为计算b时,a2已经被减掉,此时n后加了两个零,所以后两项要乘以100.
b2的计算实际上已经包含乘以100了。中间项计算时是用的20×a×b,也是100倍。也就是说,这个20里的2是本身要的,10是为了凑成100倍。

这个方法本质上是不断分解误差项q。计算c时,n=(a.bc)2+q'=(a.b)2+2×a.b×0.0c+(0.0c)2+q',其中后三项就是之前已经算出的误差项q,这一步又减掉了后三项的前两项,得到一个更小的误差项q'。所以,理论上这种方法是精确的。




op.278
回复

使用道具 举报

发表于 2009-7-20 13:09 | 显示全部楼层
这个方法不错,但太麻烦
回复

使用道具 举报

发表于 2009-11-27 21:59 | 显示全部楼层
我们老师都讲过
回复

使用道具 举报

发表于 2009-11-29 15:00 | 显示全部楼层
太复杂了,还是老师的好
回复

使用道具 举报

发表于 2009-11-29 16:31 | 显示全部楼层
这个很有用!
回复

使用道具 举报

发表于 2010-5-22 19:39 | 显示全部楼层
初中的时候,老师有说过。但是,计算机随身的现在,还能有什么用呢?
回复

使用道具 举报

发表于 2010-7-11 13:14 | 显示全部楼层
不错,顶了
回复

使用道具 举报

发表于 2010-7-11 13:58 | 显示全部楼层
这个太累人了,不想用计算机,其实还可以翻数理化用表的
回复

使用道具 举报

发表于 2010-7-11 21:35 | 显示全部楼层
这个方法好,以后终于可以有根据做这方面的题了。
回复

使用道具 举报

发表于 2010-7-12 14:39 | 显示全部楼层
在高考前就锻炼过可以在40秒左右不精确运算一个任意的三位有效数字的开方。
主要是的是展开式。
比如26开方,就化成sqrt(25*(1+1/25))=5*(1+1/50)=51/10=5.1
正确答案是5.099,那么就只有1/1000数量级的误差了,考试时足矣。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|大科技

GMT+8.8, 2024-12-23 08:45 , Processed in 0.054002 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表