程序员数学 - 零的故事

2013年 八月 14日 周三 | tags: math, zero, reading, notes, -- (permalink)

之前买了几本关于数学的书,这两天看了《程序员数学》第一章 0的故事,以前只是知道0,却不知道0在数学中的作用和意义。

计数法

在10进制中,每一位的数字表示的是这一位上的个数,如书中的2503:

2 => $2 xx 1000$ => $2 xx 10^3$

5 => $5 xx 100$ => $5 xx 10^5$

0 => $0 xx 10$ => $0 xx 10^1$

3 => $3 xx 1$ => $3 xx 10^0$

如上面引用中的,把每一行的结果加起来就是 2503,这里我觉得在中文中表示数字其实更准确: 两千五百零三 ,在每一位都表示了这一位的单位,在阅读上更容易理解和准确,但是在书写上并不方便。

2进制每一位的表示和10进制的差不多,不过2进制是以 $2^n$ 做为基数的,其他进制的也差不多。不管是什么进制的计数法,每一位上的数字表示都都是这位上数字的个数,而对于这位上没有数字,就用0表示。

指数法则

这一节说了 $n^0$ 为什么等于 1:

$10^3 = 1000$

$10^2 = 100$

$10^1 = 10$

$10^0 = 1$

$10^-1 = 1/10$

$10^-2 = 1/100$

$10^-3 = 1/1000$

从上面的等式可以推导出: $1 = 10 xx 1/10 = 101 xx 10-1 = 10(1-1) = 100$

这就是 指数法则 ,他的表达式是: $Na xx Nb = N^(a+b)$, 其中 N != 0。

零的作用

零的作用:占位;统一标准,简化规则;在日常生活中表示没有计划等之类的。

  • 占位:在计数中表示所在位没有,虽然没有但是不能不写,不写的数字就表示的很怪异,所以需要0 占位
  • 统一标准,简化规则:在计数法中,每一位数字都可以用 $a_k xx 10^k$ 表示,其中k是这个数字的 位数-1 , a就是这个数字。
  • 在日常生活中0表示没有,比方说没有计划,今天不用吃药等

结论

在书中,人类为了超越极限不断的简化计数方法,将大为题分解一个个小的单元,即便在现代我们做软件工程的,也是把一个项目分解成若干的模块,分给不同的小组,项目组在把这个模块分解成若干个小单元,分给每个小组成员,这也是这本书的主旨之一。