程序員的數學系列(一)

程序員的數學系列閱讀筆記,第一部分介紹數學基礎,還有一些有趣的數學問題

第1章 0的故事

無即是有,zero matters

10進制

2503

2×103+5×102+0×101+3×100

2進制

1100

1×23+1×22+0×21+0×20

基數轉換

  • 2進製表示12
    這裏寫圖片描述
    計算機計算過程:(21+19)2(10101+10011)使2(101000)10(40)

指數法則

103110102110101110100=1

251224110231222122112201221=12

指數法則

Na×\Nb=Na+b(N0)

0所起的作用

  • 佔位

    2503, 表示10位什麼都沒有

  • 統一標準,簡化規則

    按位計數就可統一寫爲

    ak×10k

    n=3,a3=2,a2=5,a1=0,a0=32503

  • 0表示沒有

    有規律地服用一種膠囊,每4天停用一次。也就是3天服用,1天停用。於是每4粒膠囊中有1粒是“沒有藥效”的假膠囊,放入標有日期的盒子並放入每天需要服用的藥,以後就只用每天服用。

第2章 邏輯

真與假的二元世界

邏輯是消除歧義得工具

兼顧完整性和排他性

沒有遺漏,沒有重複

邏輯非

A ¬A
true false
false true

雙重否定表肯定

A ¬A ¬¬A
true false true
false true false

邏輯與

AB(AandB)

真值表

A B AB
true true true
true false false
false true false
false false false

文氏圖

02

文氏圖表示¬(AB)

03

邏輯或

AB(AorB)

真值表

A B AB
true true true
true false true
false true true
false false false

文氏圖

文氏圖表示(¬A)(¬B)
這裏寫圖片描述

異或

AB
真值表

A B AB
true true false
true false true
false true true
false false false

文氏圖

相等

A=B
真值表

A B A=B
true true true
true false false
false true false
false false true

文氏圖

¬(AB)(A=B)

蘊含—若A則B

AB
真值表

A B AB
true true true
true false false
false true true
false false true

A爲true時,僅當B爲false時AB 才爲false
A爲false時,AB 恆爲true

此爲邏輯上“如果”的定義

我們平時說的“若A則B”有兩種情況

  1. 若A爲true,則B也爲true。若A爲false,則B也爲false
  2. 若A爲true,則B也爲true。但是,若A爲false時,則B爲true/false都可以(對B沒有任何影響)

在邏輯上二者的區別在於,1是A=B ,2是AB

文氏圖,(¬A)B 的文氏圖也是這樣,於是(¬AB)(AB) ,二者等價

BAAB 的逆命題,逆命題不一定爲真

(¬B)(¬A) 的文氏圖也和AB 的相同(二者等價),即,((¬B)(¬A))(AB)
此爲AB 的逆否命題

德·摩根定律

(¬A)(¬B)=¬(AB)

(¬A)(¬B)=¬(AB)

三值邏輯的德·摩根定律

(!A)(!B)=!(AB)
(!A)(!B)=!(AB)

if (!(x >= 0 && y >= 0)) {
    .....
}
// equal to
if (x < 0 || y < 0) {
    ....
}

本章小結

邏輯的各種表現形式

if語句將世界一分爲二,條件成立的世界和條件不成立的世界

第3章 餘數

週期性和分組

星期數問題

今天是星期日,100天后是星期幾?

1億天呢?

10100 天后呢?

100÷7=14...2

因此100天后是星期二

108÷7=14285714...2

因此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···的順序循環

100÷6=16...4

餘數爲4,因此10100 天后是星期四

直觀地把握規律

第n天是星期幾

10n 天是星期幾

乘方得思考題

1234567987654321 的個位數是什麼

試算:

12345670 的個位數=70 的個位=1

12345671 的個位數=71 的個位=7

12345672 的個位數=72 的個位=9

12345673 的個位數=73 的個位=3

12345674 的個位數=74 的個位=1

12345675 的個位數=75 的個位=7

12345676 的個位數=76 的個位=9

12345677 的個位數=77 的個位=3

12345678 的個位數=78 的個位=1

12345679 的個位數=79 的個位=7

週期爲4,用987654321對4取餘0、1、2、3其中之一,它們分別對應1、7、9、3

餘1,所以個位數是7

黑白棋通信

  1. 桌面隨機7枚黑白棋棋子,魔術師蒙着眼睛,看不到棋子
    014
  2. 魔術師徒弟看完7枚棋子後,又放進一枚,這時桌面有8枚棋子
    015
  3. 觀衆可以選擇翻轉一枚或者不翻轉任何棋子,此時觀衆和徒弟都不能說話
  4. 魔術師觀察8枚棋子,馬上就能判斷觀衆是不是翻轉了棋子
    016
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章