第一次见到 0.999… = 1 这个等式,你是否感到难以置信?脑子里闪过一个念头:「这压根不对吧?!」
毕竟,0.999… 看起来似乎只是“差那么一点点”才会到 1。然而,数学家们却坚定地告诉我们,0.999… 不仅仅是接近 1,它实际上就等于 1。
这个令人心生疑虑的等式,背后其实隐藏着数学的深刻逻辑。今天就让我们聊聊,怎样理解为什么 0.999… 和 1 实际上是相同的数字,并且希望在文末你也能微笑着点头,彻底理解这个看似悖论的数学现象。
什么是 0.999…?
首先,让我们明确一下 0.999… 的定义。它是一个无限循环小数,表示的是小数点后面有无穷多个 9,这个过程不会停止。
我们习惯了有限的数量,比如有限的钱、有限的时间,因此很难想象什么是“无限接近”。但在数学中,0.999… 就是这样一个无限的存在,它与我们习惯的“接近但不等于”的日常生活逻辑截然不同。
想象一下你在百米跑步,终点线就在前方 100 米远。
你开始先跑了 90 米,离终点还剩 10 米;继续又跑了 9 米,现在离终点还剩 1 米;接着再跑了 0.9 米,离终点只剩下 0.1 米……
每次都觉得自己离终点越来越近,但这样来看的话,似乎永远到不了终点。听起来像是个噩梦对吧?
不过实际上,你肯定不会慌张,因为知道终点必能达到。并且数学上也能证明在「无限」的步数下,确能到达终点。
数学上的解释
现在我们已经知道“无限”是理解这个谜题的关键。接下来,让我们正式进入数学的世界,看看用数学工具如何证明 0.999… 与 1 是相等的。别担心,我们会用一些非常简单的方法,逐步揭开谜团。
证明一:简单的代收证明
首先,设 x = 0.999…,这意味着 x 是一个由无穷多个 9 组成的小数。现在,乘以 10:
10x = 9.999…
现在我们有两个等式:
接下来,我们从第二个等式中减去第一个等式:
10x - x = 9.999… - 0.999…
结果是:
最后,除以 9:
因此,0.999… = 1。
这个证明非常直接,展示了通过基本的代数操作,我们可以推导出 0.999… = 1。尽管过程看起来像是“变魔术”,但它的每一步都符合数学逻辑。
证明二:几何级数的力量
另一种有趣的证明方法是利用几何级数。几何级数是数学中的一种特殊数列之和,它的每一项都与上一项呈固定比例。
对于 0.999… 来说,它可以被看作是这样一个级数:
这是一个公比为 1/10 的几何级数。几何级数的求和公式是:
其中 a 是级数的首项,r 是公比。对于我们的级数,a = 0.9,r = 1/10。将它们代入公式,我们得到:
所以,0.999… 的和是 1。
证明三:数轴上的解释
从数轴上看,每一个点都对应一个实数。我们可以把 0.999… 看作在数线上无限接近 1 的一个数。
接下来的一点非常重要:在数轴上,0.999… 和 1 之间没有任何空隙, 也就是说,不存比 0.999… 大、但比 1 小的数。
为什么 0.999… = 1 让人困惑?
尽管 0.999… = 1 的数学证明清楚明了,但许多人仍然本能地拒绝这个等式。这背后的原因通常有两个:
事实上,0.999… = 1 是基于数学中的 极限 概念。如果你不熟悉极限,那么很容易产生误解。极限告诉我们,当你考虑一个无限过程时,尽管每一步似乎都还差一点点,但最终的结果已经是终点了。
结语:从 0.999… 看数学的奇妙世界
0.999… = 1 这个看似简单却充满思考的数学等式,实际上展示了数学中的许多深刻思想,如无穷、极限、完备性等。这个等式告诉了我们,数学中的事实有时看似反直觉,但通过逻辑推导,我们可以发现它背后的严谨性和美感。
数学不仅仅是公式和定理,它是一场充满乐趣的思想冒险。每一个看似简单的等式背后,都有着深刻的逻辑和美妙的思想。勇敢探究,你会发现更多的惊喜!
文末留下两个小问题,供大家娱乐一下。
1和0.99999..................哪个大?
从小到大,我经历过很多有关 0.999... 的睿智或愚蠢的讨论。 0.999...=1 吗?事实上这个问题的讨论在欧拉的时代就开始了。 从18世纪的数学通讯,到20世纪的各类报刊杂志,乃至网络时代的大小论坛聊天室,无数人为这个问题绞尽脑汁,或争得面红耳赤,或百思不得其解,或觉得有理也说不清……我想,假使一个外星人无意间连上了地球的互联网,它也许会把这个问题理解成黎曼猜想或费马大定理的某种简洁的表述。 因为它或许很难想得到,地球人会对一个初等的问题投入如此多的关注和热情。 0.999...=1 吗?这个问题的有趣之处在哪里呢?很显然不在等式的右边。 如果我们把等式左边换成 0.9,然后来讨论 “0.9=1吗?” ,那么所有人都会说:当然左边比较小嘛。 “0.999...=1”这一问题的关键之处在于等式左边的 “0.999...”,或者更准确地说,在于“0.999...是什么”。 也许有人会说:“这个问题我们在小学就学过了。 它是一个循环小数,读作‘零点九,九循环’”(读错的同学请自己用头撞墙一百遍)。 真的是这样吗?让我们仔细搜索一下我们小学时学习数学的记忆,回忆一下与“循环小数”相关的片段(对于过于痛楚而抹去了该段记忆的同学,就随我来回忆一下吧)。 小学数学中,我们首先学习了“1+2”,“3+4”之类的加减法,接着一边学习乘法和带余数的除法,一边开始认识分数。 五年级的时候,我们开始接触“除不尽的除法”,在“小明400米跑了75秒,问小明的平均速度”一类问题的引导下,我们知道:“除不尽的小数”被称为无穷小数,比如说 0.333... 是 1 除以 3 的结果,0.777... 是 7 除以 9 的结果。 接下来课本给出了循环小数的定义:“一个数的小数部分,从某一位起,一个数字或几个数字依次不断重复出现,这样的小数称为循环小数”。 这里出现了一个很奇怪的现象:循环小数的概念是通过整数(或者有限小数)的除法(“除不尽”)来引进的,比如 0.777... 是 7 除以 9 的结果。 可是,0.999... 会是怎样的除法带来的呢?如果说 7 除以 9 得到 0.777...,8 除以 9 得到0.888...,那么 0.999...似乎应该是 9 除以 9 得来的。 但是,9 除以 9 的除法并不是除不尽的,结果就是 1,也就是说,并不会带来 0.999... 的情况。 0.999... 是一个符合课本定义,但又不会经由普通除法得到的数!实际上,小学课本中也并没有讨论这种情况。 大概是觉得,在实际的计算中,永远不会出现这个结果吧。 既然小学课本并没有花费精力在 0.999... 的问题上,那么我们在哪里会再次遇到它呢?严格来说,如果你和某位伟人一样,从小学之后就打定主意不理数学了,那么你兴许这辈子也不会在课堂上听到有关 0.999... 的严肃讨论。 对这个问题的严格讨论一般出现在大学的课堂里,是认识实数和进位制之时要处理的情况之一。 为什么跨度如此之大呢?这要从“无穷小数”讲起。 事实上,我认为我们在小学的数学学习中能够接受“无穷小数”的概念,是一件很奇妙的事。 之前我们处理的数字都是几位数的加减乘除:从一位数到两位数,再从两位数到三位数。 突然间,我们要接受一种全新的“数”,这个数有无穷多位!我想如果我们同时要接受另一种无穷多位的数:“...777”,会不会也如此理所当然呢?也许未必吧。 无穷小数最前面的小数点给了我们一种心理上的错觉,让我们觉得,既然它也“不怎么大”,或许就是可以接受的吧。 另一种想法则是:这不过是分数的另一种表示方法罢了。 事实上,如果我们仔细分析无穷小数的概念,会发现这个概念其实包含了很多远超小学的知识。 比如说,我们能不能写“0.333...=0.3+0.03+0.003+...”呢?这似乎很自然,可实际上我们正在写的等式右边是无穷多个数的加法。 这种加法显然不是小学范围内的东西。 上了中学之后我们学到了无穷等比数列的求和,才知道这样做是合理的。 更奇特的是无穷不循环的小数:如果一个小数是无限不循环的,我们如何知道它的每一位数字呢?如果我们不知道一个无限不循环小数的每一位数字(比如De Bruijn–Newman常数),那么怎么知道这个小数有多大呢?我们能不能说它等于它每一位上的数对应的小数的和呢?甚至我们如何定义它的存在呢?当然这样的问题不会出现在升中考的卷子上。 所以,我们就理所当然地接受了无穷小数的概念,度过了无忧无虑的童年。 有传说中国数学教育的一种失败是没有在最早的时候就引进对数学概念的深刻理解,没有好象法国一样,用交换群的概念来教小学加法。 虽然这个传说被证明是假的,但我们不妨来想一下,如果用公理化的方式进行小学数学的教育,我们的小学生对0.999... 会有什么认识呢?让我们首先在一年级用皮亚诺公设定义自然数的,然后在三年级引进交换群和除环定义四则运算,将整数定义为一个包含自然数的交换群,将有理数定义为整数环的分式域,最后在五年级用戴德金分割或柯西序列引入实数的概念(各位同学可以无视这段话)。 这时候,我们会发现,我们可以直接开始论、实分析和线性代数的课程。 对数死早的各位同学来说,就是一句话:不论是有限小数还是无限小数,在数学的教育中其实都不是必备的知识,缺了这一环,对以后的数学教育并没有什么影响。 那么,我们学习小数是为了什么呢?答案是:小数是实数的一种记法,是实数的进位制记数法的一部分。 就好比我们喜欢用十进制来表示各种数一样,小数能够比较直观地表示一个数,某些时候能方便我们计算或比较大小。 意识到这一点之后,我们就可以比较客观地来看 0.999... 的问题了。 作为一种记数法,小数并不会改变实数的本质。 记数法的意义是给出每个实数的唯一表达方式,不会也不应该表达出不是实数的东西。 0.999... 既然不能通过整数除法得到,而仅仅是由于记数法的定义产生的,那么我们就有必要审视,它是否真的代表了一个实数。 让我们从进位制记数法的定义说起。 以自然数的十进制记数法为例:一个自然数N,我们从比它小的10的最高次幂开始,不断地做带余除法,就可以得到唯一的表达式:其中都是0到9之间的自然数。 这就是N的十进制表示。 比如对自然数9230,它的十进制表示就是:.对于更一般的正实数X,我们可以做相似的步骤来给出它的十进制表示:首先找到 然后找到唯一一个( 1 到 9 之间)的自然数 ,使得接下来令,然后对 重复上一次的操作(但 可以是 0 到 9 之间的自然数),得到 。 由于 ,所以正整数 趋于无穷大的时候, 的极限是0。 如果对某个确定的 ,,那么我们得到了一个有限数列 ,正实数X的十进制表示就是:当然,更加常见的写法是,如果,并且不大于 ,就写成 ,然后在后面补零,一直补到 位为止;如果,并且 大于,就在第位后面标一个小数点;如果m<0,那么在前面补,一直补到小数点后有 个零为止。 这就是有限小数。 更有趣的情况是:对任意的 , 都不为零。 这时候我们得到的是一个无穷的数列。 于是我们要定义无穷个数的加法了。 这种运算正式的名称叫无穷级数的求和。 简单来说,有限小数的时候,现在我们要看是否有意义,以及(如果有意义的话)它是否等于X。 不过我们知道而且我们已经知道 的极限是 0,所以当 趋于无穷大的时候,因此,我们不仅能够有意义地写出:而且还可以说:这就是任意正实数的十进制表示法。 负实数的十进制表示法则是在它的绝对值的十进制表示法上加一个负号。 给出了如此一大堆定义之后,我们还可以从上面的推理中看出来,这种记数法是“好的”记数法。 也就是说,每个实数都有一种表达方式,但不会有两种不同的表示方式,而且不同的两个实数不会有同一个表达方式。 定义了实数的十进制记数法后,我们终于可以开始讨论0.999...的问题了。 假设0.999...是某个实数X的十进制表示法,那么说明,而且对所有的,都有。 按照构造的方式,对应的实数应该是:这是一个无穷等比数列的和,我们可以用公式求出来:但是,构造1的十进制表示法时,,,矛盾!这说明,0.999...不是任一个实数X的十进制表示法,它不表示任何实数。 如果按十进制表示法的定义“写出”0.999...的话,它的值是,因此等于1。 也正是因此,出于记数法的唯一性,0.999...不是一个用来表示实数的记数方式。 更进一步地说,我们可以证明,十进制表示法中不存在从某一位开始一直是9的循环小数表示方法,因为它将会对应一个有限小数,从而采用有限小数的记数方法。 0.999...是比照实数的十进制记数法写出的一个“畸胎”。 如果我们不容许写.4,并说这等于43.4,那么我们也不会容许0.999...这种写法。 0.999...=1是一个思维的游戏,“滥用”了实数的十进制记数法的方式,写出一个等于1的无穷级数,并造成“它看起来小于1”的假象。 实际上,正规的记数法中不存在0.999...,数学家说:我们都用1。
0.999......=1???
错!!!!!的确有人说0.……=1还的确有人说1/9=0.……难道0.9……=1?难道1/9真的等于0.……吗?似乎少了点什么吧!其实楼主碰到的问题在于极限问题。 我们只能说1/9的极限为0.11……0.9……的极限等于1而已。 而不能不负责任地说1/9=0.……0.……=1极限这个概念其实是很难理解的,等楼主到了高中,学了数列就自然会明白的。
1大还是0.99999……(9循环)大?
从小到大,我经历过很多有关 0.999... 的睿智或愚蠢的讨论。 0.999...=1 吗?事实上这个问题的讨论在欧拉的时代就开始了。 从18世纪的数学通讯,到20世纪的各类报刊杂志,乃至网络时代的大小论坛聊天室,无数人为这个问题绞尽脑汁,或争得面红耳赤,或百思不得其解,或觉得有理也说不清……我想,假使一个外星人无意间连上了地球的互联网,它也许会把这个问题理解成黎曼猜想或费马大定理的某种简洁的表述。 因为它或许很难想得到,地球人会对一个初等的问题投入如此多的关注和热情。 0.999...=1 吗?这个问题的有趣之处在哪里呢?很显然不在等式的右边。 如果我们把等式左边换成 0.9,然后来讨论 “0.9=1吗?” ,那么所有人都会说:当然左边比较小嘛。 “0.999...=1”这一问题的关键之处在于等式左边的 “0.999...”,或者更准确地说,在于“0.999...是什么”。 也许有人会说:“这个问题我们在小学就学过了。 它是一个循环小数,读作‘零点九,九循环’”(读错的同学请自己用头撞墙一百遍)。 真的是这样吗?让我们仔细搜索一下我们小学时学习数学的记忆,回忆一下与“循环小数”相关的片段(对于过于痛楚而抹去了该段记忆的同学,就随我来回忆一下吧)。 小学数学中,我们首先学习了“1+2”,“3+4”之类的加减法,接着一边学习乘法和带余数的除法,一边开始认识分数。 五年级的时候,我们开始接触“除不尽的除法”,在“小明400米跑了75秒,问小明的平均速度”一类问题的引导下,我们知道:“除不尽的小数”被称为无穷小数,比如说 0.333... 是 1 除以 3 的结果,0.777... 是 7 除以 9 的结果。 接下来课本给出了循环小数的定义:“一个数的小数部分,从某一位起,一个数字或几个数字依次不断重复出现,这样的小数称为循环小数”。 这里出现了一个很奇怪的现象:循环小数的概念是通过整数(或者有限小数)的除法(“除不尽”)来引进的,比如 0.777... 是 7 除以 9 的结果。 可是,0.999... 会是怎样的除法带来的呢?如果说 7 除以 9 得到 0.777...,8 除以 9 得到0.888...,那么 0.999...似乎应该是 9 除以 9 得来的。 但是,9 除以 9 的除法并不是除不尽的,结果就是 1,也就是说,并不会带来 0.999... 的情况。 0.999... 是一个符合课本定义,但又不会经由普通除法得到的数!实际上,小学课本中也并没有讨论这种情况。 大概是觉得,在实际的计算中,永远不会出现这个结果吧。 既然小学课本并没有花费精力在 0.999... 的问题上,那么我们在哪里会再次遇到它呢?严格来说,如果你和某位伟人一样,从小学之后就打定主意不理数学了,那么你兴许这辈子也不会在课堂上听到有关 0.999... 的严肃讨论。 对这个问题的严格讨论一般出现在大学的课堂里,是认识实数和进位制之时要处理的情况之一。 为什么跨度如此之大呢?这要从“无穷小数”讲起。 事实上,我认为我们在小学的数学学习中能够接受“无穷小数”的概念,是一件很奇妙的事。 之前我们处理的数字都是几位数的加减乘除:从一位数到两位数,再从两位数到三位数。 突然间,我们要接受一种全新的“数”,这个数有无穷多位!我想如果我们同时要接受另一种无穷多位的数:“...777”,会不会也如此理所当然呢?也许未必吧。 无穷小数最前面的小数点给了我们一种心理上的错觉,让我们觉得,既然它也“不怎么大”,或许就是可以接受的吧。 另一种想法则是:这不过是分数的另一种表示方法罢了。 事实上,如果我们仔细分析无穷小数的概念,会发现这个概念其实包含了很多远超小学的知识。 比如说,我们能不能写“0.333...=0.3+0.03+0.003+...”呢?这似乎很自然,可实际上我们正在写的等式右边是无穷多个数的加法。 这种加法显然不是小学范围内的东西。 上了中学之后我们学到了无穷等比数列的求和,才知道这样做是合理的。 更奇特的是无穷不循环的小数:如果一个小数是无限不循环的,我们如何知道它的每一位数字呢?如果我们不知道一个无限不循环小数的每一位数字(比如De Bruijn–Newman常数),那么怎么知道这个小数有多大呢?我们能不能说它等于它每一位上的数对应的小数的和呢?甚至我们如何定义它的存在呢?当然这样的问题不会出现在升中考的卷子上。 所以,我们就理所当然地接受了无穷小数的概念,度过了无忧无虑的童年。 有传说中国数学教育的一种失败是没有在最早的时候就引进对数学概念的深刻理解,没有好象法国一样,用交换群的概念来教小学加法。 虽然这个传说被证明是假的,但我们不妨来想一下,如果用公理化的方式进行小学数学的教育,我们的小学生对0.999... 会有什么认识呢?让我们首先在一年级用皮亚诺公设定义自然数的,然后在三年级引进交换群和除环定义四则运算,将整数定义为一个包含自然数的交换群,将有理数定义为整数环的分式域,最后在五年级用戴德金分割或柯西序列引入实数的概念(各位同学可以无视这段话)。 这时候,我们会发现,我们可以直接开始论、实分析和线性代数的课程。 对数死早的各位同学来说,就是一句话:不论是有限小数还是无限小数,在数学的教育中其实都不是必备的知识,缺了这一环,对以后的数学教育并没有什么影响。 那么,我们学习小数是为了什么呢?答案是:小数是实数的一种记法,是实数的进位制记数法的一部分。 就好比我们喜欢用十进制来表示各种数一样,小数能够比较直观地表示一个数,某些时候能方便我们计算或比较大小。 意识到这一点之后,我们就可以比较客观地来看 0.999... 的问题了。 作为一种记数法,小数并不会改变实数的本质。 记数法的意义是给出每个实数的唯一表达方式,不会也不应该表达出不是实数的东西。 0.999... 既然不能通过整数除法得到,而仅仅是由于记数法的定义产生的,那么我们就有必要审视,它是否真的代表了一个实数。 让我们从进位制记数法的定义说起。 以自然数的十进制记数法为例:一个自然数N,我们从比它小的10的最高次幂开始,不断地做带余除法,就可以得到唯一的表达式:其中都是0到9之间的自然数。 这就是N的十进制表示。 比如对自然数9230,它的十进制表示就是:.对于更一般的正实数X,我们可以做相似的步骤来给出它的十进制表示:首先找到 然后找到唯一一个( 1 到 9 之间)的自然数 ,使得接下来令,然后对 重复上一次的操作(但 可以是 0 到 9 之间的自然数),得到 。 由于 ,所以正整数 趋于无穷大的时候, 的极限是0。 如果对某个确定的 ,,那么我们得到了一个有限数列 ,正实数X的十进制表示就是:当然,更加常见的写法是,如果,并且不大于 ,就写成 ,然后在后面补零,一直补到 位为止;如果,并且 大于,就在第位后面标一个小数点;如果m<0,那么在前面补,一直补到小数点后有 个零为止。 这就是有限小数。 更有趣的情况是:对任意的 , 都不为零。 这时候我们得到的是一个无穷的数列。 于是我们要定义无穷个数的加法了。 这种运算正式的名称叫无穷级数的求和。 简单来说,有限小数的时候,现在我们要看是否有意义,以及(如果有意义的话)它是否等于X。 不过我们知道而且我们已经知道 的极限是 0,所以当 趋于无穷大的时候,因此,我们不仅能够有意义地写出:而且还可以说:这就是任意正实数的十进制表示法。 负实数的十进制表示法则是在它的绝对值的十进制表示法上加一个负号。 给出了如此一大堆定义之后,我们还可以从上面的推理中看出来,这种记数法是“好的”记数法。 也就是说,每个实数都有一种表达方式,但不会有两种不同的表示方式,而且不同的两个实数不会有同一个表达方式。 定义了实数的十进制记数法后,我们终于可以开始讨论0.999...的问题了。 假设0.999...是某个实数X的十进制表示法,那么说明,而且对所有的,都有。 按照构造的方式,对应的实数应该是:这是一个无穷等比数列的和,我们可以用公式求出来:但是,构造1的十进制表示法时,,,矛盾!这说明,0.999...不是任一个实数X的十进制表示法,它不表示任何实数。 如果按十进制表示法的定义“写出”0.999...的话,它的值是,因此等于1。 也正是因此,出于记数法的唯一性,0.999...不是一个用来表示实数的记数方式。 更进一步地说,我们可以证明,十进制表示法中不存在从某一位开始一直是9的循环小数表示方法,因为它将会对应一个有限小数,从而采用有限小数的记数方法。 0.999...是比照实数的十进制记数法写出的一个“畸胎”。 如果我们不容许写.4,并说这等于43.4,那么我们也不会容许0.999...这种写法。 0.999...=1是一个思维的游戏,“滥用”了实数的十进制记数法的方式,写出一个等于1的无穷级数,并造成“它看起来小于1”的假象。 实际上,正规的记数法中不存在0.999...,数学家说:我们都用1。