返回首页您现在的位置: 主页 > www.66msc.net > 文章内容

有哪些你想发明却已经被人发明了的东西?

作者: admin 来源: 未知 时间: 2016-12-22 阅读:
FBI Warning:前方需要简易的数学知识,请阅读前复习“对数”。

初一的时候自学对数,学到了log(a)+log(b)=log(ab)

于是突发奇想,这样就可以用两个对数值相加得到另一个新的对数值,只要用两把尺子按比例刻上log1 log2 log3......,然后假如想求2x3,就把尺子A的1对准尺子B的2,那么尺子A的3对应位置就应该是尺子B的6了,这不就是个计算器么!!!

后来花了一宿做了一套从1到20的尺子,最大范围到100。第二天拿到班上装逼。众人惊讶。

后来我姥爷告诉我这东西叫对数计算尺,过去所有木工都有一套……
(关于对数计算尺以及它有什么作用,请翻到分隔线2查看!)
(关于对数的表示方法以及其他声明,请翻到分隔线3查看)

==========分隔线1==================

鉴于有些同学没看懂我说的是啥,所以我做个图来示范。
首先选定一个固定长度作为尺子,选一个最大值域,比如,15。
所以这套尺就只能计算到乘积小于等于15的乘法~

制作方法是,选取起始点为log 1,结束点为log 15,中间分别计算log 2, log 3... log x...log 14,按比例画好刻度,在每个刻度处标记上x,如下图:(第一位标了log 1,其实应该写1)
我们需要两个尺子做运算,如下:
由于刻度x到log 1之间的长度为log x,而根据
log(a) + log(b) = log (ab)
所以把两个长度(log a 和 log b)加起来得到的总长(log ab),对应的刻度就是ab。

小朋友们,我们来试试看~

1.计算 3x4
用尺子B的1对准尺子A的3,尺子B的4对应的尺子A的数字就是计算结果:
红线标出的地方就是结果,结果为12.

2.计算1x1
用尺子B的1对准尺子A的1,尺子B的1对应的尺子A的数字就是计算结果,为1,如图:
结果为1.

3.计算4x4
用尺子B的1对准尺子A的4,尺子B的4对应的尺子A的数字就是计算结果,如图:

由于已经超出值域,所以看不到计算结果,但是我们可以知道尺子A的log 16处就是红线所标记的位置。

这套尺子还有更有趣的玩法,比如验证交换律,做除法,用一个尺子和圆规求平方,递归找到所有质数,用两个比例不同的尺子验证不同底的对数关系,求平方根。。。各种玩法。我记得当时整整玩了一个月。
(勘误:之前写成了换底公式,系谬误)


==========分隔线2==================

我姥爷后来给我看的东西是这个:

图片引用源:Slide Rules and Typewriters: A Memoir of Christmas Presents Past
然后我惊讶的回忆起,小时候做手工的时候要画直线,向姥爷要尺子,他就给我这个当直尺用,我当时还问过他为什么尺子上刻度不均匀来着。。。

解释下怎么做乘法运算。对数计算尺有三部分,定尺是外面的那层,动尺是中间能推拉的小尺,嵌在定尺内部。透明的上面有一道红线的滑块用来对准内外刻度进行读数。
(定尺动尺滑块是我自己乱起的名字嗯。。别随便跟别人说免得被鄙视)
计算的时候,移动动尺到相应位置,最后用滑块确认计算结果。维基百科给的图清晰的说明了对数计算尺的计算原理:
图中,下面的尺子取1到2的长度为log 2,加上上面那个尺子1到3的长度为log 3,于是上面那个尺3的地方就对应下面那个尺子6,即,2x3=6, 对应位置log 6

当我们发现计算超出范围的时候,比如用上图计算尺计算2x7,要怎么办呢?
对应方法是改成计算2x0.7,只需把定尺整体缩小10倍就可以啦。这么做可行是因为从log 1到 log 10的长度等于log 0.1到log 1的长度:
log(10) - log(1) = log (10) = log (1/0.1) = log (1) - log (0.1)

于是如图,定尺(下)取2为基准,动尺(上)的10(图中为最右侧的1)对准定尺的2,动尺由于缩小了10倍所以7的地方现在是0.7,所以动尺的7对应定尺的数字就是计算结果,即1.4.

这就是神奇的计算尺!
以上两图片的引用源为Slide rule维基百科

对数计算尺的作用在于没有计算器也能进行计算,比如木工师傅要算某矩形木板对角线长度,先测量边长,然后就可以很快用计算尺算出两个边长平方和,然后开平方。

小伙伴们思考一下,对数计算尺如何开平方呢?(提示:简单得不能再简单)

直接给答案吧,被开平方数和1之间中点就是结果
因为
log(x^0.5)=0.5 log(x)
。。。

==========分隔线3==================
抬手回答,结果现在900多赞,感谢大家支持
我在文中用了“log”这个符号,有一些朋友指出我没写底数,在这里说一下对数的表示方法。
在答主比较熟悉计算机领域中,log(x)一般有两个含义:

?讨论信息熵的时候,若以bit为基础,则log默认以2位底,比如在信息量的公式
I(\omega)=-log(P(\omega))中,log是以2为底的。理由是某事件只有发生或者不发生两种可能。
?讨论计算复杂性的时候,比如大O表示法中,log是不在意以什么为底的,因为取任何大于1的实数为底的x的对数,都可以转换成形如M\times log_{c} x的形式,只要给所有log都取同样的c,M不影响最后结果。

在计算尺的原理中,底并不造成影响,其原因和大O表示法里log不考虑底的原因一样,底不管怎么变,最后画到同样长度的尺子上刻度的位置不变,因为改变底数对计算结果的影响是按比例放大而已。因此我通篇用的都是log,表示可以用任何合法的数为底。

给大家造成困扰了,实在是抱歉。

===废话时间===
我姥爷是电工,木工也会,退休后做变电器技术员,记忆中他每天上班会都带着计算尺去。小学的时候给我讲电学的事情还历历在目= =妈蛋忽然想家了
上一篇:正规赌场里哪种玩法游客胜率最高? 下一篇:没有了

相关阅读