1 00:00:02,923 --> 00:00:05,567 在英文裡有很多不同種類的字彙 2 00:00:05,567 --> 00:00:08,309 像是名詞,形容詞,介系詞,動詞 3 00:00:08,309 --> 00:00:09,886 然後有很多規則 4 00:00:09,886 --> 00:00:12,601 告訴我們如何把它們組成一個句子 5 00:00:12,601 --> 00:00:19,341 如果我說 ”狗書我吃“ 6 00:00:19,341 --> 00:00:22,033 你會覺得 ”你到底在說什麼?“ 7 00:00:22,033 --> 00:00:23,913 如果你不覺得有錯的話 8 00:00:23,913 --> 00:00:25,867 很明顯的,你不能把兩個名詞放在 9 00:00:25,867 --> 00:00:28,108 形容詞和動詞前面 10 00:00:28,108 --> 00:00:29,440 這行不通的 11 00:00:29,440 --> 00:00:34,764 但如果換成說 ”我的狗吃書“ 12 00:00:34,764 --> 00:00:37,260 那你現在就知道我在說什麼了 13 00:00:37,260 --> 00:00:38,910 我甚至可以把動詞“吃”換掉 14 00:00:38,910 --> 00:00:42,765 換成另外一個動詞像是,我想想看,丟 15 00:00:42,765 --> 00:00:45,426 這在文法上還是正確的 16 00:00:45,426 --> 00:00:47,875 即使你沒辦法想像我的狗正在丟一本書 17 00:00:47,875 --> 00:00:49,991 但是在程式裡,我們不用不同種的字彙 18 00:00:49,991 --> 00:00:52,125 反而用一種東西叫資料類型 19 00:00:52,125 --> 00:00:54,485 你已經看過其中一種了:數字 20 00:00:54,485 --> 00:00:57,067 我們經常我們的繪圖程式裡使用數字 21 00:00:57,067 --> 00:00:58,323 就像英文 22 00:00:58,323 --> 00:01:01,342 有時候程式裡可以用數字,有時候不行 23 00:01:01,342 --> 00:01:05,354 如果我開始在背景程式打 “100減” 24 00:01:06,104 --> 00:01:08,696 那下一個東西最好要是數字 25 00:01:08,696 --> 00:01:13,508 或是一個也是數字的東西像是 “14+15” 26 00:01:13,508 --> 00:01:17,833 但是如果我打 “100 空白” 27 00:01:17,833 --> 00:01:20,434 我不可能在後面放一個數字 28 00:01:20,434 --> 00:01:23,815 因為 “100 空白 10” 不代表任何東西 29 00:01:23,815 --> 00:01:27,534 所以程式裡有另外一種資料類型,叫做Boolean 30 00:01:27,534 --> 00:01:29,133 這個程式叫做Boolean 31 00:01:29,133 --> 00:01:33,631 是因為某個叫做George Boole的傢伙發明它的 32 00:01:33,631 --> 00:01:37,394 不像一個數字有很多可能的值 33 00:01:37,394 --> 00:01:42,031 Boolean只能是兩種值: 是,或,否 34 00:01:43,000 --> 00:01:44,932 你可以看到當我打出他們的時候,他們變成藍色 35 00:01:44,932 --> 00:01:47,333 這代表他們是超級特別酷的字 36 00:01:47,333 --> 00:01:49,433 而且你之前已經看過我用過Boolean了 37 00:01:49,433 --> 00:01:52,036 雖然你可能沒有發現: if 述句! 38 00:01:52,036 --> 00:01:53,968 讓我們趕快複習一下他們怎麼運作 39 00:01:53,968 --> 00:01:58,931 我現在要給一個變數 “Number” 一個數值:40 40 00:01:58,931 --> 00:02:01,499 然後寫一個if述句說: 41 00:02:01,499 --> 00:02:08,707 “如果那個數字小於50,那我就畫第一個橢圓” 42 00:02:10,795 --> 00:02:13,044 接著我把這些程式複製進這個if述句 43 00:02:13,044 --> 00:02:16,234 然後全選再按tab把它縮排 44 00:02:16,234 --> 00:02:18,333 所以現在這個if述句說: 45 00:02:18,333 --> 00:02:22,772 “如果這個數字小於50,就要畫出上方這個橢圓” 46 00:02:22,772 --> 00:02:25,431 而如果這個數字大於50 47 00:02:25,431 --> 00:02:28,434 左上方的橢圓就消失了 48 00:02:28,434 --> 00:02:30,573 好,所以這些在括號裡面的東西 49 00:02:30,573 --> 00:02:32,831 其實就是一個Boolean述句 50 00:02:32,831 --> 00:02:36,164 記得,一個數學表述是任何可以做數學運算的表述 51 00:02:36,164 --> 00:02:40,204 像是3加2加4乘8 52 00:02:40,204 --> 00:02:43,801 所以一個Boolean述句就是可以做Boolean運算的述句 53 00:02:43,801 --> 00:02:46,499 一個檢查Boolean述句的好方法 54 00:02:46,499 --> 00:02:50,500 就是把是否放在句子中間,像是在問一個問題 55 00:02:50,500 --> 00:02:54,043 如果他聽起來像是一個是非問題,那他就是Boolean述句 56 00:02:54,043 --> 00:02:57,137 所以在這邊我們問:“這個數字是否小於50?” 57 00:02:57,137 --> 00:03:00,598 是,他是,所以這是一個Boolean述句 58 00:03:00,598 --> 00:03:04,173 如果現在我們有一個述句“4+4” 59 00:03:04,173 --> 00:03:10,224 然後我試著問:“是否4加是4” 這不是一個Boolean述句 60 00:03:10,224 --> 00:03:12,065 所以回到我們的if述句 61 00:03:12,065 --> 00:03:14,573 我其實可以把任何東西放進這個述句 62 00:03:14,573 --> 00:03:17,457 只要他是一個Boolean值或是Boolean述句 63 00:03:17,457 --> 00:03:21,289 所以如果我說 “if “是”” 我們永遠可以畫出一個橢圓 64 00:03:21,289 --> 00:03:24,598 或是說“if “否”” 那我們永遠畫不出這個橢圓 65 00:03:24,598 --> 00:03:28,699 我也可以說“if 3小於4” 66 00:03:28,699 --> 00:03:32,035 他是一個Boolean述句,而其值永遠是 “是” 67 00:03:32,035 --> 00:03:34,664 那句很明顯是正確的,而我們則永遠可以畫出這個橢圓 68 00:03:34,664 --> 00:03:38,042 或是 “if 3大於4”那這句話是不正確的 69 00:03:38,042 --> 00:03:41,049 我也可以賦予一個變數Boolean值,像是這樣: 70 00:03:41,049 --> 00:03:48,767 我現在要創造一個新的變數 WhinstonIsCool,然後給他 71 00:03:48,767 --> 00:03:51,500 一個Boolean值,所以是“是”或“否” 72 00:03:51,500 --> 00:03:54,274 假設他是“是”因為Winston很酷 73 00:03:54,274 --> 00:03:57,047 所以現在這個變數有一個Boolean值了 74 00:03:57,047 --> 00:04:00,444 我可以複製他進去if述句 75 00:04:00,444 --> 00:04:04,120 然後你們現在可以看到這個橢圓了 76 00:04:04,120 --> 00:04:06,731 因為變數WinstonIsCool的值是“是” 77 00:04:06,731 --> 00:04:10,600 我可以用一個Boolean述句來代替這個 78 00:04:10,600 --> 00:04:14,200 像是“2小於4” 79 00:04:14,200 --> 00:04:18,099 現在如果你正在創造一個變數含有Boolean值 80 00:04:18,099 --> 00:04:19,602 你應該給他一個名字 81 00:04:19,602 --> 00:04:21,997 來確定這個變數是“是”還是“否” 82 00:04:21,997 --> 00:04:24,902 有一個好方法來確定你的變數有一個好名字 83 00:04:24,902 --> 00:04:28,330 是把它放進一個if述句然後看他有沒有邏輯 84 00:04:28,330 --> 00:04:31,434 所以,忘記WinstonIsCool,我們已經知道他是“是” 85 00:04:31,434 --> 00:04:34,306 我們假設有另一個變數叫“瑪芬” 86 00:04:34,306 --> 00:04:37,101 好的,“If 瑪芬”,恩 87 00:04:37,101 --> 00:04:38,304 你知道嗎? 88 00:04:38,304 --> 00:04:42,169 他不代表任何意義,所以他是一個糟糕的變數名稱 89 00:04:42,169 --> 00:04:46,166 但是如果是“If 正在烤瑪芬” 那我們可以知道 90 00:04:46,166 --> 00:04:50,931 這個變數是否是“是”,那就正在烤瑪芬 91 00:04:50,931 --> 00:04:54,229 而不是問我什麼瑪芬,那並不重要 92 00:04:54,229 --> 00:04:59,000 所以現在我們回去“If 數字小於50” 93 00:04:59,000 --> 00:05:00,383 酷 94 00:05:00,383 --> 00:05:02,538 現在我們來看其他Boolean述句 95 00:05:02,538 --> 00:05:05,772 你已經看過“小於”和“大於” 96 00:05:05,772 --> 00:05:09,077 但是你可以檢查一個東西是否是“小於等於” 97 00:05:09,077 --> 00:05:12,571 所以來試試看,“If 數字小於等於48” 98 00:05:12,571 --> 00:05:20,034 我們也可以說“If 數字大於等於48” 99 00:05:20,034 --> 00:05:24,201 如果是,我們可以畫出右上角的橢圓 100 00:05:24,201 --> 00:05:27,375 縮排這句 101 00:05:27,375 --> 00:05:30,271 如果你想要檢查兩個東西是否相同 102 00:05:30,271 --> 00:05:32,419 可以說”if 數字 103 00:05:32,419 --> 00:05:36,281 然後後面打三個等號,或是“三個等號48” 104 00:05:39,494 --> 00:05:42,496 所以他很像你在數學裡用的等號 105 00:05:42,496 --> 00:05:44,794 不過這次你有連續三個等號 106 00:05:44,794 --> 00:05:46,634 有點多餘是不是? 107 00:05:46,634 --> 00:05:48,899 所以最後,我們想要知道 108 00:05:48,899 --> 00:05:51,235 兩個東西是不是不相等 109 00:05:51,235 --> 00:05:53,236 所以嚴格來講,你可以說 110 00:05:53,236 --> 00:05:57,601 “if 數字”然後接一個驚嘆號和兩個等號,然後“48” 111 00:05:57,601 --> 00:06:02,134 所以我們現在可以畫出最後一個橢圓 112 00:06:04,096 --> 00:06:07,499 所以如果回到最上面,我們可以看到數字是48 113 00:06:07,499 --> 00:06:09,765 所以這個數字小於等於48 114 00:06:09,765 --> 00:06:11,766 也就是為什麼左上角的橢圓會出現 115 00:06:11,766 --> 00:06:16,201 這個數字也大於等於48,也等於48 116 00:06:16,201 --> 00:06:18,701 但他不等於48 117 00:06:18,701 --> 00:06:21,630 這就是為什麼我們缺少右下角的橢圓 118 00:06:21,630 --> 00:06:23,803 如果我們現在更改數字 119 00:06:23,803 --> 00:06:26,346 你可以看到橢圓出現的變化 120 00:06:26,998 --> 00:06:29,634 所以現在你們知道Boolean值 121 00:06:29,634 --> 00:06:31,300 就像數學算式 122 00:06:31,300 --> 00:06:33,734 Boolean述句可以變得很複雜 123 00:06:33,734 --> 00:06:35,743 但是我們改個時間再講吧