尚未建立名稱
能量:0
我的帳號中心
問 學Bot 任何問題!
首頁&搜尋
最愛&收藏
所有課程
分享資源
帳號設定
關於學呀
線上募款
多重邏輯運算
編輯章節
EDU-MD
Google 教室
加至書籤
# 產生布林值 ## 大於與小於 ::: suggestion 這個章節的重點,在於帶領讀者理解物件導向的概念,而非介紹單一個程式語法。此章節的程式語法和 JavaScript 等程式語言相近,但並非任何真實程式語言。請專注於章節中的概念部分,而非語法部分。 ::: 我們都知道如何比較數字的大小,例如 5 < 6 就是件眾所皆知的事實。在程式中,我們也經常會需要比較數字的大小,例如我們在製作一個改考卷的軟體,必須決定學生成績是否及格,那它就必須知道如何判斷學生分數是否大於 60 分。假設有一個學生成績 58 分,我們要分辨他是否及格,並輸出布林值,那麼我們會這樣寫: ``` pass = 58 > 60; print(pass); ``` 結果應當輸出「 false 」,因為「 58 > 60」這件事是錯的,所以「 58 > 60」所代表的就是「 false 」。但是我們很快就會遇上問題,假設有學生考試成績為 60 分: ``` pass = 60 > 60; print(pass); ``` 如果執行這段程式碼,我們會發現結果為「 false 」,但常理判斷,60 分應該是及格的。那麼我們該如何解決這個問題呢?相信我們都知道數學中「大於或等於(≧)」的概念,在此便可使用這樣的想法,而在程式中,我們會使用 `>=` 來表示: ``` pass = 60 >= 60; print(pass); ``` 這樣就大功告成了!另外,「小於」和「小於等於」也是相同的用法與概念,他們的符號分別為 `<` 和 `<=` 。 ## 等於與不等於 現在我們要寫一段程式來判斷學生分數是否 100 分,因為老師想要嘉獎滿分的學生。你可能覺得我們會使用「 = 」的符號,但事實上,我們會使用 `==` 雙等號來表達相等。 ``` good = 100 == 100; print(good); ``` 螢幕上將會顯示「 true 」,因為 100 等於 100。不幸的是,下一節是數學課,老師打算讓所有沒有 100 分的學生罰站。那麼我們該如何表達「不等於 100 」呢?很簡單,只要把 `==` 換成 `!=` 就好了: ``` punished = 98 != 100; ``` 螢幕上將顯示「 true 」,真是個可憐的學生! ## 想想看 ``` a = 100 = 100; /*錯誤寫法*/ b = 100 == 100; /*正確寫法*/ ``` 為什麼執行第一行程式時會出現錯誤,執行第二行卻不會?電腦分辨的了第一行中兩個 `=` 的差別嗎? # 複合的邏輯運算 綜合以上以及上一個章節所提到的所有概念,這裡將提供一些範例作為參考。範例程式碼中的變數皆如同其名字所表示。 未滿 18 歲但是已婚: ``` status = is_married && age < 18; ``` 兩次考試成績任一達到及格標準: ``` status = exam_1 >= 60 || exam_2 >= 60; ``` 體重沒有過重但是體脂肪過高: ``` status = !is_overweight && is_overfat; ``` 是國際學生但是英文成績低於 70: ``` status = is_international_student && score < 70; ``` 是登入的但是等級太低: ``` status = is_logged_in && level < threshold; ``` 資產超過 100 萬、單親、有兩個小孩: ``` status = wealth > 1000000 && is_divorced && kids == 2; ``` 智商超過 140,而且不是Google的員工: ``` status = iq > 140 && company != "Google"; ```
複製內容