77百科网
当前位置: 首页 生活百科

常用对数与自然对数的用途(为什么自然对数表要以神奇的自然常数e为底)

时间:2023-05-25 作者: 小编 阅读量: 4 栏目名: 生活百科

通过表格的形式建立真数与对数的对应关系,就是对数表。常用对数是指以10为底的对数。如lg97254的首数必然是4;上述性质也是常用对数称为常用的原因。虽然编对数表很麻烦,但是编好了就是一劳永逸的事情,因此有个大数学家开始编对数表。换句话说,像0.5和0.55这种相差不大的数,如果用0.1做底数,那么必须把对数表做到精确到小数点以后很多位才能看出他们对数的差别。如果以此值为对数的底来编制一张对数表会怎样?

1 对数与对数表

先看下面两个等式:

(10^2)*(10^3)=10^(2 3)

(10^2)^3=10^(2*3)

似乎用某一种巧妙的方式可以将幂运算转换为乘运算,乘运算可以转换为加运算。

这种巧妙的运算就是对数表,对数是指数运算的逆运算,如a^x=N,x就是以a为底,真数N的对数。通过表格的形式建立真数与对数的对应关系,就是对数表。

常用对数是指以10为底的对数。

10的正整数幂的常用对数,等于真数里0的个数,如lg1000=3;

正数的常用对数的首数,是真数的整数部分的位数减去1的一个整数。如lg97254的首数必然是4;

上述性质也是常用对数称为常用的原因(后面会叙述自然对数自然的原因)。

对数的运算法则:

log(a) (M·N)=log(a) M log(a) N

log(a) (M÷N)=log(a) M-log(a) N

log(a) M^n=nlog(a) M

log(a)b*log(b)a=1

log(a) b=log (c) b÷log (c) a

利用常用对数表对乘、幂的化简运算:

真数表由首列、首行组成,其它是对应的对数。

2 历史上寻找对数的底的过程

以前人们做乘法就用乘法,很麻烦,发明了对数这个工具后,乘法可以化成加法,即:log(ab) = logalogb。

但是能够这么做的前提是,我要有一张对数表,能够知道loga和logb是多少,然后求和,能够知道log多少等于这个和。虽然编对数表很麻烦,但是编好了就是一劳永逸的事情,因此有个大数学家开始编对数表。但他遇到了一个麻烦,就是这个对数表取多少作为底数最合适?10吗?或是2?为了决定这个底数,他做了如下考虑:

2.1 真数的考量:所有乘数/被乘数都可以化到0-1之内的数乘以一个10的几次方(科学记数法)。

2.2 底的考量:那么只考虑做一个0-1之间的数的对数表了,那么我们自然用一个0-1之间的数做底数(如果用大于1的数做底数,那么真数(取值0-1之间)取完对数就是负数,不够直观)。

2.3 这个0-1间的底数不能太小,比如0.1就太小了,这会导致很多数的对数都是零点几;而且“相差很大的两个数的对数值却相差很小”,比如0.1做底数时,两个数相差10倍时,对数值才相差1。换句话说,像0.5和0.55这种相差不大的数,如果用0.1做底数,那么必须把对数表做到精确到小数点以后很多位才能看出他们对数的差别。

2.4 为了避免这种缺点,底数尽量要接近于1,比如0.99就很好,0.9999就更好了。总的来说就是1 - 1/X ,X越大越好。在选了一个足够大的X(X越大,对数表越精确,但是算出这个对数表就越复杂)后,你就可以算:

(1-1/X)^1 = P1 ,

(1-1/X)^2 = P2 ,

……

那么对数表上就可以写上P1的对数值是1,P2的对数值是2……(以1-1/X作为底数)。而且如果X很大,那么P1、P2、P3、……之间都靠得很紧,基本可以满足均匀地覆盖了0.1-1之间的区间。

2.5 最后数学家纳皮尔用(1- 1/X)^X作为底,这样P1的对数值就是1/X,P2的对数值就是2/ X,……PX的对数值就是1,这样不至于让一些对数值变得太大,这样调整之后,各个数的对数值基本在0-1之间。两个值之间最小的差为1/X。

2.6 让对数表更精确,那么X就要更大,数学家算了很多次,1000,1万,十万,最后发现,X变大时,这个底数(1 - 1/X)^X趋近于一个值。这个值就是1/e,自然对数底的倒数(虽然那个时候还没有给它取名字)。其实如果我们第一步不是把所有值放缩到0.1-1之间,而是放缩到1-10之间,那么同样的讨论,最后的出来的结果就是e了--- 这个大数学家就是著名的欧拉(Euler),自然对数的名字e也就来源于欧拉的姓名。

3 试编码一个以1.0001为底的对数表

使用C代码枚举:

#include <iostream>#include <cmath>using namespace std;double di = 1.0001;void main(){int n;for(n=1;n<10;n)cout<<di<<"^"<<n<<"\t:"<<pow(di,n)<<endl;for(n=9990;n<10010;n)cout<<di<<"^"<<n<<"\t:"<<pow(di,n)<<endl;for(n=23020;n<23028;n)cout<<di<<"^"<<n<<"\t:"<<pow(di,n)<<endl; system("pause");}

运行后结果:

1.0001^1 :1.00011.0001^2 :1.00021.0001^3 :1.00031.0001^4 :1.00041.0001^5 :1.00051.0001^6 :1.00061.0001^7 :1.00071.0001^8 :1.00081.0001^9 :1.00091.0001^9990 :2.715431.0001^9991 :2.71571.0001^9992 :2.715971.0001^9993 :2.716241.0001^9994 :2.716521.0001^9995 :2.716791.0001^9996 :2.717061.0001^9997 :2.717331.0001^9998 :2.71761.0001^9999 :2.717871.0001^10000 :2.718151.0001^10001 :2.718421.0001^10002 :2.718691.0001^10003 :2.718961.0001^10004 :2.719231.0001^10005 :2.719511.0001^10006 :2.719781.0001^10007 :2.720051.0001^10008 :2.720321.0001^10009 :2.720591.0001^23020 :9.9931.0001^23021 :9.9941.0001^23022 :9.9951.0001^23023 :9.9961.0001^23024 :9.9971.0001^23025 :9.9981.0001^23026 :9.9991.0001^23027 :10

其中的一个值是:

1.0001^10000 :2.71815

其实就是lim(1 1/n)^n(n→∞)的雏形。

如果以此值为对数的底来编制一张对数表会怎样?

4 一个最大值问题

假设a*b=N

当a取什么值时,a^b的值最大?(a,b可以是小数)。

用一个C程序来枚举一下:

#include <iostream>#include <cmath>using namespace std;void main(){int n=10; float i=0.1;for(int k=1;i*k<=n;k,i*k){cout<<i*k<<"\t ^ "<<n/(i*k)<<"\t="<<pow(i*k,n/(i*k))<<endl;} system("pause");}

输出:

2 ^ 5 =322.1 ^ 4.7619 =34.22772.2 ^ 4.54545 =36.01362.3 ^ 4.34783 =37.38782.4 ^ 4.16667 =38.38962.5 ^ 4 =39.06252.6 ^ 3.84615 =39.45042.7 ^ 3.7037 =39.5953 //最大值位置2.8 ^ 3.57143 =39.5362.9 ^ 3.44828 =39.30753 ^ 3.33333 =38.9407

当n取不同值时,满足a*b=n,a在2.7附近时,a^b的值最大。

n、i取任意值,如n=5,i=0.01时,也可以看到这种规律。

设f(x)=x^(K/x),x>0,K是大于0的常数。对f求导,即可得x=e时f取极大值,也是最大值。

二进制存储的计算机,一个32位的的机器使用了32个1和0,也就是64个元素,可以表达2^32=4.29*10^9个精度的数字。同样是64个元素,假设表达成3^21.3=1.45*10^10,即使是3^21也有1.05*10^10个精度,也就是说,如果用三进制,可以有更多的组合,而四进制呢?组合数又变小了(其实e进制有最多的组合数)。

5 自然常数e

e^x的泰勒展开式,当x=1时,e=1 1/1! 1/2! 1/3! 1/4! ... 1/n!。

自然常数e又叫银行家常数。是指当连续复利(计息分期无限扩大,且利滚利)时,本息和不会无限扩大,而是会趋于一个定值,这个定期就与e有关。

连续复利表达式:本金*(1 r/n)^(n*t)=本金*e^(r*t)。其中r是利率,t是期数。

假设本金是1000,年利率是36%,期限是1年。可算得利息和是1360。

如果按月算复利,其本息和是1000*(1 0.36/12)^(12*1)=1425.76。

如果按天算复利,其本息和是1000*(1 0.36/365)^(365*1)=433.08。

如果是连续复利,其本息和是1000*e^0.36=1433.33。

也就是,不管你怎样对1年进行细分,进行复滚利,其本息和并不会无限扩大,本金是1000,年利率是36%时,其本息和不会超过1433.33。

如果一群单细胞生物每24小时全部分裂一次,单位时间内,持续的指数增长所能达到的极限值就是e,这个值是自然增长的极限。

因为e=2.7182818284... ,极为接近循环小数2.71828(1828循环),那就把循环小数化为分数271801/99990,所以可以用271801/99990表示为e最接近的有理数约率,精确度高达99.9999999(7个9)% 。

6 自然常数e的收敛性7 比较e^π 与π^e的大小

(e=2.71828……,π=3,14159……)

从上面的最值可以简单判断,e*π一定时,当底数接近2.7时,e^π有较大值。

也可从以下思路推理:

可以用计算器计算出相关值:

8 自然常数相关表达式与导数

(x^n)'=nx^(n-1)。

(a^x)'=a^xlnx。

(e^x)' = e^x,其导数(变化率竟然是自身)。

我们一般用指数增长来表示很快的一个增长速度,而指数增长中,其中底数是e的指数增长,是最快速的指数增长。

(logax)'=1/(xlna)。

(lnx)' = 1/x。

自然对数的变化率(导数)是最简洁的。

9 自然对数表与为什么用自然常数做为底

先看一下使用自然对数表的一个实例:

试想要编制一张对数表,如果知道了对数函数的变化率(导数),根据相邻很小间隔(如0.01)的真数就可以求出相邻的对数值,而自然对数函数的导数是所有对数函数中最简洁的:

最简洁的表达式:(lnx)'=1/x,大道至简,大道自然。

10 用c代码近似计算e值

10.1 用级数1 1/1! 1/2! 1/3! 1/4! 1/5! 1/6! ... 1/n! ...近似e值

#include "stdafx.h"

#include <math.h>

int factorial(int j)

{

int sum;

if(j == 0)

sum = 1;

if(j == 0)

sum = 1;

else

sum = j * factorial(j-1);

return sum;

}

void main()

{

int i;

double sum1 = 0.0;

for(i=0;i<=12;i){

sum1 = sum1(1.0/factorial(i));

}

printf("0: %d %d %f ",i,factorial(i),sum1);

}

//运行结果:0: 13 1932053504 2.718282

10.2 用公式lim(1 1/n)^n(n→∞)近似e值

#include "stdafx.h"

#include <math.h>

void main()

{

int i;

double sum1,sum2;

for(i=1;i<=10;i){

sum1 = (1.0 (1.0/i));

sum2 = pow(sum1,i);

printf("%d %f ",i,sum2);

}

printf(" ");

for(i=90;i<=100;i){

sum1 = (1.0 (1.0/i));

sum2 = pow(sum1,i);

printf("%d %f ",i,sum2);

}

printf(" ");

for(i=99990;i<=100000;i){

sum1 = (1.0 (1.0/i));

sum2 = pow(sum1,i);

printf("%d %f ",i,sum2);

}

printf(" ");

}

1 2.000000

2 2.250000

3 2.370370

4 2.441406

5 2.488320

6 2.521626

7 2.546500

8 2.565785

9 2.581175

10 2.593742

90 2.703332

91 2.703495

92 2.703654

93 2.703810

94 2.703962

95 2.704112

96 2.704258

97 2.704401

98 2.704542

99 2.704679

100 2.704814

99990 2.718268

99991 2.718268

99992 2.718268

99993 2.718268

99994 2.718268

99995 2.718268

99996 2.718268

99997 2.718268

99998 2.718268

99999 2.718268

100000 2.718268

-End-

,
    推荐阅读
  • 如何立足岗位发挥好示范引领作用(如何发挥好岗位的示范和引领作用)

    跟着小编一起来看一看吧!如何立足岗位发挥好示范引领作用首先要做实践的模范。要忠实履行政协会议的各种决议,自觉遵守各项工作制度,正确行使自己的民主权力。中共党员中的政协委员,不论是在政协组织的活动中,还是在日常工作生活中,都要积极地进行调查研究,了解最新动态,了解社会各方面的真实情况,了解群众的情绪、困难和诉求,充分反映他们的要求和呼声,使党委和政府能及时采纳他们对党和政府工作的意见建议。

  • 海底捞 摄像头(海底捞包间内安装摄像头遭质疑)

    对于安装摄像头是否会侵犯隐私,网友各执一词。安装了摄像头的门店也表示,安装主要是为了防止客人丢失东西,方便找回。不过,北青报记者进一步采访其安装摄像头的必要性时,截至发稿时,海底捞方面暂时没有回应。图像信息系统在营业期间应当正常运行,不得中断。在这一规定中,包间并未罗列其中。此前曾有调查称,在30家火锅店中,有19家在包间装有摄像头;在14家非火锅店中,也有2家的包间装有摄像头。

  • 讯飞智能语音服务(IQEQ齐上阵讯鸟软件打造更有)

    讯飞智能语音服务埃森哲调研显示:多达75%的高管表示,自己的组织将在未来三年积极部署某种人工智能技术,AI将作为一名同事、合作者和值得信赖的顾问,在企业中与人类并肩协作。智能客服语音机器人能够支持语音情感三分类、四分类和六分类,在各类应用场景下识别率均超过85%,在成熟的业务场景下识别准确率可高达95%。

  • 提高fps的方法csgo(FPS游戏CSGO之身位控制)

    FPS游戏CSGO之身位控制​高手与菜鸟最大的差距也许还不是枪法,而是存活率同样的一个点位,菜鸟去看点,永远是拉一个大身位,同时暴露在复数架枪点的准星内,所以死亡率奇高无比高手的身法多变,身位控制良好,知道适当切换行进节奏与路线。

  • 怎么用微信支付(用微信支付的方法介绍)

    怎么用微信支付?最简单的,看到各个超市或者别的地方的收银台都会贴有一张二维码图片,上面写着微信支付,就可以使用手机微信来支付了,打开手机微信,右上角有一个的标志,点击它,下面我们就来聊聊关于怎么用微信支付?接下来我们就一起去了解一下吧!这是把商家的二维码放到相机前,就可以自动扫描了,扫描出来后,可以看到要付款的别人的微信名称,可以核对一下,没问题就输入金额,完成付款。

  • 白萝卜多久能煮熟(白萝卜怎么煮)

    下面更多详细答案一起来看看吧!白萝卜多久能煮熟通常情况下,白萝卜水只要煮十五到二十分钟就差不多了。白萝卜煮水的做法非常简单,我们平时如果想要喝白萝卜水的话都可以自己在家里制作。制作它首先要把准备好的白萝卜清洗干净并切成片状或是块状,注意这里是不需要给萝卜去皮的。在白萝卜处理好之后,我们就可以准备一口锅并往里面倒入适量的清水加热。

  • 键盘和电脑怎么清洁(干货清洁电脑屏幕)

    键盘和电脑怎么清洁DTECH帝特,传递精彩画面,分享快乐时光!这种情况,我们可以购买专用液晶屏幕清洁剂进行清洁,价格大概在20~50元之间,通常专用清洁剂都有详细的使用说明。以上几个清洁方法都需要有规则地轻轻擦拭屏幕,不可以用力按着擦,否则容易给屏幕造成坏点。

  • 茉莉飘雪茶的功效与作用(关于茉莉飘雪茶的功效与作用)

    茉莉飘雪茶的功效与作用茉莉花茶是花茶中的典型,茉莉飘雪花茶能够帮助人体降血脂,有利于人体内脂肪的分解,还有一定的清除氧自由基作用,所以能够起到抗氧化、防衰老的功效。茉莉飘雪花茶能够起到保肝护肝、美容养颜的作用,同时还有一定杀菌、抗菌、增强机体免疫力的作用,可以预防感染性疾病,因为茉莉花茶中含有的营养物质比较丰富,能够提高机体的免疫力,也能够对抗疾病的发生。

  • 堕仙是指什么意思(堕仙出现在哪位人物身上呢)

    堕仙是指什么意思是指堕落的仙人,也指走火入魔,因为面对让自己万分痛苦的事而无法承受,后变为魔的紫薰上仙。紫薰上仙堕仙成魔是因一直守护她的檀凡上仙为救她而死,紫薰上仙觉得对不起檀凡上仙,又很愤怒于白子画的漠不关心,所以成为堕仙。求而不得,一念成魔。本是仙界的紫薰仙子,五上仙之一,擅长制香,因痴恋白子画而成为堕仙,坠入魔道。后被花千骨感动,放下执念,将所有功力传给白子画,成全白子画与花千骨。

  • 想让学习强国由青铜变成骨灰吗(想让学习强国由青铜变成骨灰吗)

    A、正确B、错误正确答案:A135、我国鼓励各类市场主体在有效保护旅游资源的前提下,依法合理利用旅游资源。A、正确B、错误正确答案:A137、2021年1月22日,我国首部战疫纪录电影上映,影片以平实的语言讲述了武汉人与来自全国各地医疗系统及其他行业的一线人员,一起打响武汉抗击新冠肺炎疫情阻击战。A、50%B、60%C、70%D、80%正确答案: