0:00:02.923,0:00:05.567 在英文裡有很多不同種類的字彙 0:00:05.567,0:00:08.309 像是名詞,形容詞,介系詞,動詞 0:00:08.309,0:00:09.886 然後有很多規則 0:00:09.886,0:00:12.601 告訴我們如何把它們組成一個句子 0:00:12.601,0:00:19.341 如果我說 ”狗書我吃“ 0:00:19.341,0:00:22.033 你會覺得 ”你到底在說什麼?“ 0:00:22.033,0:00:23.913 如果你不覺得有錯的話 0:00:23.913,0:00:25.867 很明顯的,你不能把兩個名詞放在 0:00:25.867,0:00:28.108 形容詞和動詞前面 0:00:28.108,0:00:29.440 這行不通的 0:00:29.440,0:00:34.764 但如果換成說 ”我的狗吃書“ 0:00:34.764,0:00:37.260 那你現在就知道我在說什麼了 0:00:37.260,0:00:38.910 我甚至可以把動詞“吃”換掉 0:00:38.910,0:00:42.765 換成另外一個動詞像是,我想想看,丟 0:00:42.765,0:00:45.426 這在文法上還是正確的 0:00:45.426,0:00:47.875 即使你沒辦法想像我的狗正在丟一本書 0:00:47.875,0:00:49.991 但是在程式裡,我們不用不同種的字彙 0:00:49.991,0:00:52.125 反而用一種東西叫資料類型 0:00:52.125,0:00:54.485 你已經看過其中一種了:數字 0:00:54.485,0:00:57.067 我們經常我們的繪圖程式裡使用數字 0:00:57.067,0:00:58.323 就像英文 0:00:58.323,0:01:01.342 有時候程式裡可以用數字,有時候不行 0:01:01.342,0:01:05.354 如果我開始在背景程式打 “100減” 0:01:06.104,0:01:08.696 那下一個東西最好要是數字 0:01:08.696,0:01:13.508 或是一個也是數字的東西像是 “14+15” 0:01:13.508,0:01:17.833 但是如果我打 “100 空白” 0:01:17.833,0:01:20.434 我不可能在後面放一個數字 0:01:20.434,0:01:23.815 因為 “100 空白 10” 不代表任何東西 0:01:23.815,0:01:27.534 所以程式裡有另外一種資料類型,叫做Boolean 0:01:27.534,0:01:29.133 這個程式叫做Boolean 0:01:29.133,0:01:33.631 是因為某個叫做George Boole的傢伙發明它的 0:01:33.631,0:01:37.394 不像一個數字有很多可能的值 0:01:37.394,0:01:42.031 Boolean只能是兩種值: 是,或,否 0:01:43.000,0:01:44.932 你可以看到當我打出他們的時候,他們變成藍色 0:01:44.932,0:01:47.333 這代表他們是超級特別酷的字 0:01:47.333,0:01:49.433 而且你之前已經看過我用過Boolean了 0:01:49.433,0:01:52.036 雖然你可能沒有發現: if 述句! 0:01:52.036,0:01:53.968 讓我們趕快複習一下他們怎麼運作 0:01:53.968,0:01:58.931 我現在要給一個變數 “Number” 一個數值:40 0:01:58.931,0:02:01.499 然後寫一個if述句說: 0:02:01.499,0:02:08.707 “如果那個數字小於50,那我就畫第一個橢圓” 0:02:10.795,0:02:13.044 接著我把這些程式複製進這個if述句 0:02:13.044,0:02:16.234 然後全選再按tab把它縮排 0:02:16.234,0:02:18.333 所以現在這個if述句說: 0:02:18.333,0:02:22.772 “如果這個數字小於50,就要畫出上方這個橢圓” 0:02:22.772,0:02:25.431 而如果這個數字大於50 0:02:25.431,0:02:28.434 左上方的橢圓就消失了 0:02:28.434,0:02:30.573 好,所以這些在括號裡面的東西 0:02:30.573,0:02:32.831 其實就是一個Boolean述句 0:02:32.831,0:02:36.164 記得,一個數學表述是任何可以做數學運算的表述 0:02:36.164,0:02:40.204 像是3加2加4乘8 0:02:40.204,0:02:43.801 所以一個Boolean述句就是可以做Boolean運算的述句 0:02:43.801,0:02:46.499 一個檢查Boolean述句的好方法 0:02:46.499,0:02:50.500 就是把是否放在句子中間,像是在問一個問題 0:02:50.500,0:02:54.043 如果他聽起來像是一個是非問題,那他就是Boolean述句 0:02:54.043,0:02:57.137 所以在這邊我們問:“這個數字是否小於50?” 0:02:57.137,0:03:00.598 是,他是,所以這是一個Boolean述句 0:03:00.598,0:03:04.173 如果現在我們有一個述句“4+4” 0:03:04.173,0:03:10.224 然後我試著問:“是否4加是4” 這不是一個Boolean述句 0:03:10.224,0:03:12.065 所以回到我們的if述句 0:03:12.065,0:03:14.573 我其實可以把任何東西放進這個述句 0:03:14.573,0:03:17.457 只要他是一個Boolean值或是Boolean述句 0:03:17.457,0:03:21.289 所以如果我說 “if “是”” 我們永遠可以畫出一個橢圓 0:03:21.289,0:03:24.598 或是說“if “否”” 那我們永遠畫不出這個橢圓 0:03:24.598,0:03:28.699 我也可以說“if 3小於4” 0:03:28.699,0:03:32.035 他是一個Boolean述句,而其值永遠是 “是” 0:03:32.035,0:03:34.664 那句很明顯是正確的,而我們則永遠可以畫出這個橢圓 0:03:34.664,0:03:38.042 或是 “if 3大於4”那這句話是不正確的 0:03:38.042,0:03:41.049 我也可以賦予一個變數Boolean值,像是這樣: 0:03:41.049,0:03:48.767 我現在要創造一個新的變數 WhinstonIsCool,然後給他 0:03:48.767,0:03:51.500 一個Boolean值,所以是“是”或“否” 0:03:51.500,0:03:54.274 假設他是“是”因為Winston很酷 0:03:54.274,0:03:57.047 所以現在這個變數有一個Boolean值了 0:03:57.047,0:04:00.444 我可以複製他進去if述句 0:04:00.444,0:04:04.120 然後你們現在可以看到這個橢圓了 0:04:04.120,0:04:06.731 因為變數WinstonIsCool的值是“是” 0:04:06.731,0:04:10.600 我可以用一個Boolean述句來代替這個 0:04:10.600,0:04:14.200 像是“2小於4” 0:04:14.200,0:04:18.099 現在如果你正在創造一個變數含有Boolean值 0:04:18.099,0:04:19.602 你應該給他一個名字 0:04:19.602,0:04:21.997 來確定這個變數是“是”還是“否” 0:04:21.997,0:04:24.902 有一個好方法來確定你的變數有一個好名字 0:04:24.902,0:04:28.330 是把它放進一個if述句然後看他有沒有邏輯 0:04:28.330,0:04:31.434 所以,忘記WinstonIsCool,我們已經知道他是“是” 0:04:31.434,0:04:34.306 我們假設有另一個變數叫“瑪芬” 0:04:34.306,0:04:37.101 好的,“If 瑪芬”,恩 0:04:37.101,0:04:38.304 你知道嗎? 0:04:38.304,0:04:42.169 他不代表任何意義,所以他是一個糟糕的變數名稱 0:04:42.169,0:04:46.166 但是如果是“If 正在烤瑪芬” 那我們可以知道 0:04:46.166,0:04:50.931 這個變數是否是“是”,那就正在烤瑪芬 0:04:50.931,0:04:54.229 而不是問我什麼瑪芬,那並不重要 0:04:54.229,0:04:59.000 所以現在我們回去“If 數字小於50” 0:04:59.000,0:05:00.383 酷 0:05:00.383,0:05:02.538 現在我們來看其他Boolean述句 0:05:02.538,0:05:05.772 你已經看過“小於”和“大於” 0:05:05.772,0:05:09.077 但是你可以檢查一個東西是否是“小於等於” 0:05:09.077,0:05:12.571 所以來試試看,“If 數字小於等於48” 0:05:12.571,0:05:20.034 我們也可以說“If 數字大於等於48” 0:05:20.034,0:05:24.201 如果是,我們可以畫出右上角的橢圓 0:05:24.201,0:05:27.375 縮排這句[br] 0:05:27.375,0:05:30.271 如果你想要檢查兩個東西是否相同 0:05:30.271,0:05:32.419 可以說”if 數字 0:05:32.419,0:05:36.281 然後後面打三個等號,或是“三個等號48” 0:05:39.494,0:05:42.496 所以他很像你在數學裡用的等號 0:05:42.496,0:05:44.794 不過這次你有連續三個等號 0:05:44.794,0:05:46.634 有點多餘是不是? 0:05:46.634,0:05:48.899 所以最後,我們想要知道 0:05:48.899,0:05:51.235 兩個東西是不是不相等 0:05:51.235,0:05:53.236 所以嚴格來講,你可以說 0:05:53.236,0:05:57.601 “if 數字”然後接一個驚嘆號和兩個等號,然後“48” 0:05:57.601,0:06:02.134 所以我們現在可以畫出最後一個橢圓 0:06:04.096,0:06:07.499 所以如果回到最上面,我們可以看到數字是48 0:06:07.499,0:06:09.765 所以這個數字小於等於48 0:06:09.765,0:06:11.766 也就是為什麼左上角的橢圓會出現 0:06:11.766,0:06:16.201 這個數字也大於等於48,也等於48 0:06:16.201,0:06:18.701 但他不等於48 0:06:18.701,0:06:21.630 這就是為什麼我們缺少右下角的橢圓 0:06:21.630,0:06:23.803 如果我們現在更改數字 0:06:23.803,0:06:26.346 你可以看到橢圓出現的變化 0:06:26.998,0:06:29.634 所以現在你們知道Boolean值 0:06:29.634,0:06:31.300 就像數學算式 0:06:31.300,0:06:33.734 Boolean述句可以變得很複雜 0:06:33.734,0:06:35.743 但是我們改個時間再講吧