程式設計師的數學 《程式設計師的數學》第二章 邏輯

2021-10-12 07:43:53 字數 1166 閱讀 1260

邏輯表示式在程式設計師眼裡是再常見不過的了。除了正常的業務邏輯處理之外,還有各種異常需要我們去捕獲。當然,能夠盡量做到考慮所有可能情況是自然要滿足的。也就應對了本書邏輯這一章節著重提出的「兼顧完整性和排他性」。當然,要做到這些,有各種數學表達方式和影象法來輔助我們完善程式的健壯性。那麼下面針對具體的圖表以及表示式做具體總結。

第二章_邏輯.png

關於邏輯的表達方式主要可以通過邏輯表示式、真值表、文氏圖以及卡諾圖。下面逐一進行介紹:

邏輯表示式在程式設計師開來已經屢見不鮮了,其包含的內容在此就一圖來回顧一下即可。

邏輯表示式.png

真值表主要通過交叉的方式,可以很好的避免遺漏與重複情況,也就是前文的完整性與排他性,因此常用真值表來驗證是否有漏或者重複的判斷。具體如下圖所示:

真值表表示a並b.png

文氏圖也就是我們在數學中常用語表示集合的交集並集情況的表達方式,其特點就是一目了然且容易理解。具體如下圖所示:

文氏圖表示a並b.png

卡諾圖主要針對複雜問題時可以簡化問題。例如書中的二燈、三等遊戲判斷在那些情況下該按按鈕。同樣的,本人在此處推導到四燈情況。只是關於五燈情況,實在不知如何通過卡諾圖表示,還是說卡諾圖也是有限條件下的表達。還需更深研究。下面列舉卡諾圖的具體例子:

卡諾圖表示a並b以及多燈遊戲.png

該定律主要是針對邏輯換算而言,個人感覺其實就與集合的交集與並集等的換算邏輯一樣。包括前文中的各種邏輯表示式,均可通過該定律做換算。

以上是本人關於閱讀《程式設計師的數學》1的第二章的個人筆記,可見一來在程式開發中的乙個簡單if……else……判斷可以引發出這麼多中表達方式;二來,確實可以通過以上這些工具輔助我們達到兼顧完整性與排他性的目的。小結完畢。

在程式的世界裡,只有不斷學習,才能留在原地。

程式設計師的數學

封面 內容簡介 如果數學不好,是否可以成為一名程式設計師呢?答案是肯定的。本書最適合 數學糟糕但又想學習程式設計的你。沒有晦澀的公式,只有好玩的數學題。幫你掌握程式設計所需的 數學思維 日文版已重印14次!程式設計的基礎是電腦科學,而電腦科學的基礎是數學。因此,學習數學有助於鞏固程式設計的基礎,寫出...

程式設計師的數學

0 明確表現可 無即是有 換言之,就是不對 無 進行特別處理。引入 0 以後,更容易簡化規則。如果找出具有一致性的簡單的規則,則便於機械式處理,讓計算機來解決問題。邏輯基本上被分為 true 和 false 兩個世界。解決問題時,並不是眉毛鬍子一起抓,而應該根據某條件分為 條件成立 和 條件不成立 ...

程式設計師的數學 目錄

貌似是2013還是哪年,不記得了,在程式設計師的世界颳起一陣數學風,數學之美啥的,當時也想看看關於數學的書,感覺大學的數學知識似乎還給老師了,可能需要看看初級一點的數學書,搜尋了一下書評,就找了這本。當時隨便翻翻,也就放下了,需要學習的東西很多,而時間總是不夠。到了2015年末,找出個週末看了下這本...