对数表这个东西已经不是这个时代的计算工具,但我觉得它的理论包含着有用的数学基础。
我就重新制作一个,并把思路写下来。
第一张对数表由别尔基和纳皮尔分别独立完成。向前辈致敬!
定义名称:$log_e^N = x$,其中,e是底数,N是真数,x是以e为底N的对数。省略 e 简写成 $log(N)=x$
也就是说:N 和 x 是以 e 为底一对映射。
原理篇:
$ log(M\cdot N) = log(M) + log(N) $ 这个公式是对数能简化乘法运算的基础。
若要求 $M \cdot N $ 的乘积。由上面公式可知:$ log(M\cdot N) = log(M) + log(N) $
可以通过对数表,由真数 $M,N$ 查对数 $log(M),log(N)$ 可知:$log(M)$和$log(N)$的值,设 $log(M)+log(N)=z$,然后有:
$log(M\cdot N)=z$,则通过对数表,由对数 $z$ 查真数$ M \cdot N$ 可知$M\cdot N$的答案。
没看懂,不要紧,举一个例子:
记住一点,就是由对数找对应的真数,或者由真数找对应的对数。就这么简单
当然学编程的,自然不能再手算对数表了,写一个简单的小程序,完成对数表的制作:
//以自然对数e为底制作对数表
#include<cstdio>
#include<cmath>
using namespace std;
int main(){
double zhen=0.0001;
printf("%-13s %-13s %-12s %-13s %-13s %-13s\n","log(N)对数","N真数","log(N)对数","N真数","log(N)对数","N真数");
for(int i=1;i<=100000;i++){
printf("%-13lf%-13lf",zhen,exp(zhen));
zhen=zhen+0.0001;
if(i%3==0) printf("\n");
else printf("\t");
}
return 0;
}
部分对数表示例:
log(N)对数 N真数 log(N)对数 N真数 log(N)对数 N真数
0.000100 1.000100 0.000200 1.000200 0.000300 1.000300
0.000400 1.000400 0.000500 1.000500 0.000600 1.000600
0.000700 1.000700 0.000800 1.000800 0.000900 1.000900
0.001000 1.001001 0.001100 1.001101 0.001200 1.001201
0.001300 1.001301 0.001400 1.001401 0.001500 1.001501
0.001600 1.001601 0.001700 1.001701 0.001800 1.001802
0.001900 1.001902 0.002000 1.002002 0.002100 1.002102
0.002200 1.002202 0.002300 1.002303 0.002400 1.002403
0.002500 1.002503 0.002600 1.002603 0.002700 1.002704
0.002800 1.002804 0.002900 1.002904 0.003000 1.003005
0.003100 1.003105 0.003200 1.003205 0.003300 1.003305
0.003400 1.003406 0.003500 1.003506 0.003600 1.003606
0.003700 1.003707 0.003800 1.003807 0.003900 1.003908
0.004000 1.004008 0.004100 1.004108 0.004200 1.004209
0.004300 1.004309 0.004400 1.004410 0.004500 1.004510
0.004600 1.004611 0.004700 1.004711 0.004800 1.004812
0.004900 1.004912 0.005000 1.005013 0.005100 1.005113
0.005200 1.005214 0.005300 1.005314 0.005400 1.005415
0.005500 1.005515 0.005600 1.005616 0.005700 1.005716
0.005800 1.005817 0.005900 1.005917 0.006000 1.006018
0.006100 1.006119 0.006200 1.006219 0.006300 1.006320
0.006400 1.006421 0.006500 1.006521 0.006600 1.006622
0.006700 1.006722 0.006800 1.006823 0.006900 1.006924
0.007000 1.007025 0.007100 1.007125 0.007200 1.007226
0.007300 1.007327 0.007400 1.007427 0.007500 1.007528
0.007600 1.007629 0.007700 1.007730 0.007800 1.007830
0.007900 1.007931 0.008000 1.008032 0.008100 1.008133
0.008200 1.008234 0.008300 1.008335 0.008400 1.008435
0.008500 1.008536 0.008600 1.008637 0.008700 1.008738
0.008800 1.008839 0.008900 1.008940 0.009000 1.009041
0.009100 1.009142 0.009200 1.009242 0.009300 1.009343
0.009400 1.009444 0.009500 1.009545 0.009600 1.009646
0.009700 1.009747 0.009800 1.009848 0.009900 1.009949
0.010000 1.010050 0.010100 1.010151 0.010200 1.010252
备注:为什么非要以 e 为底?
https://www.zhihu.com/question/59919618