程序員的數學系列閱讀筆記,第一部分介紹數學基礎,還有一些有趣的數學問題
第1章 0的故事
無即是有,zero matters
10進制
2503
2進制
1100
基數轉換
- 2進製表示12
計算機計算過程:
指數法則
指數法則
0所起的作用
佔位
2503, 表示10位什麼都沒有
統一標準,簡化規則
按位計數就可統一寫爲
0表示沒有
有規律地服用一種膠囊,每4天停用一次。也就是3天服用,1天停用。於是每4粒膠囊中有1粒是“沒有藥效”的假膠囊,放入標有日期的盒子並放入每天需要服用的藥,以後就只用每天服用。
第2章 邏輯
真與假的二元世界
邏輯是消除歧義得工具
兼顧完整性和排他性
沒有遺漏,沒有重複
邏輯非
true | false |
false | true |
雙重否定表肯定
true | false | true |
false | true | false |
邏輯與
真值表
true | true | true |
true | false | false |
false | true | false |
false | false | false |
文氏圖
文氏圖表示
邏輯或
真值表
true | true | true |
true | false | true |
false | true | true |
false | false | false |
文氏圖
文氏圖表示
異或
真值表
true | true | false |
true | false | true |
false | true | true |
false | false | false |
文氏圖
相等
真值表
true | true | true |
true | false | false |
false | true | false |
false | false | true |
文氏圖
蘊含—若A則B
真值表
true | true | true |
true | false | false |
false | true | true |
false | false | true |
A爲true時,僅當B爲false時 才爲false
A爲false時, 恆爲true
此爲邏輯上“如果”的定義
我們平時說的“若A則B”有兩種情況
- 若A爲true,則B也爲true。若A爲false,則B也爲false
- 若A爲true,則B也爲true。但是,若A爲false時,則B爲true/false都可以(對B沒有任何影響)
在邏輯上二者的區別在於,1是 ,2是
文氏圖, 的文氏圖也是這樣,於是 ,二者等價
爲 的逆命題,逆命題不一定爲真
的文氏圖也和 的相同(二者等價),即,
此爲 的逆否命題
德·摩根定律
三值邏輯的德·摩根定律
if (!(x >= 0 && y >= 0)) {
.....
}
// equal to
if (x < 0 || y < 0) {
....
}
本章小結
邏輯的各種表現形式
if語句將世界一分爲二,條件成立的世界和條件不成立的世界
第3章 餘數
週期性和分組
星期數問題
今天是星期日,100天后是星期幾?
1億天呢?
天后呢?
因此100天后是星期二
因此1億天後是星期二
0的個數 | 數字 | 除以7的餘數 | 星期數 |
---|---|---|---|
0 | 1 | 1 | 一 |
1 | 10 | 3 | 三 |
2 | 100 | 2 | 二 |
3 | 1000 | 6 | 六 |
4 | 10000 | 4 | 四 |
5 | 100000 | 5 | 五 |
6 | 1000000 | 1 | 一 |
7 | 10000000 | 3 | 三 |
8 | 100000000 | 2 | 二 |
9 | 1000000000 | 6 | 六 |
10 | 10000000000 | 4 | 四 |
11 | 100000000000 | 5 | 五 |
12 | 1000000000000 | 1 | 一 |
餘數以1、3、2、6、4、5···的順序循環
餘數爲4,因此 天后是星期四
直觀地把握規律
第n天是星期幾
第 天是星期幾
乘方得思考題
的個位數是什麼
試算:
的個位數= 的個位=1
的個位數= 的個位=7
的個位數= 的個位=9
的個位數= 的個位=3
的個位數= 的個位=1
的個位數= 的個位=7
的個位數= 的個位=9
的個位數= 的個位=3
的個位數= 的個位=1
的個位數= 的個位=7
週期爲4,用987654321對4取餘0、1、2、3
其中之一,它們分別對應1、7、9、3
餘1,所以個位數是7
黑白棋通信
- 桌面隨機7枚黑白棋棋子,魔術師蒙着眼睛,看不到棋子
- 魔術師徒弟看完7枚棋子後,又放進一枚,這時桌面有8枚棋子
- 觀衆可以選擇翻轉一枚或者不翻轉任何棋子,此時觀衆和徒弟都不能說話
- 魔術師觀察8枚棋子,馬上就能判斷觀衆是不是翻轉了棋子