WEBVTT 00:00:01.343 --> 00:00:04.535 我們來談談如何使用程式 來檢查比較複雜的條件吧 00:00:04.835 --> 00:00:06.632 為了作出示範,我把我的畫布 00:00:06.632 --> 00:00:09.387 設定成像我從前經常玩的 一個舊遊戲那樣:四方格 00:00:09.387 --> 00:00:11.826 遊戲有四個方格 名字改得真好! 00:00:11.826 --> 00:00:14.827 你在其中一個方格 把球彈到其他方格去 00:00:14.827 --> 00:00:17.283 現在,我要在滑鼠的位置畫一個圓形 00:00:17.283 --> 00:00:19.003 那就是我們的球 00:00:19.003 --> 00:00:21.767 我要做的是把球身處的那個方格反白 00:00:21.767 --> 00:00:24.202 做法是畫一個白色的方格在上面 00:00:24.202 --> 00:00:26.106 我知道這樣做需要一個 if 述句 00:00:26.106 --> 00:00:28.234 我希望一步步慢慢來 00:00:28.234 --> 00:00:30.400 只有當球在那個矩形內 方格才會反白 00:00:30.400 --> 00:00:34.002 好吧,我們先來畫一個矩形 00:00:35.036 --> 00:00:40.437 我只需要把之前的抄過來 但給它一個不同的顏色,白色 00:00:41.368 --> 00:00:44.495 好了,現在把它放進一個 if 述句當中 00:00:45.633 --> 00:00:49.956 你能看到它給我自動完成了那個大括號 所以我得把它移進去 00:00:50.601 --> 00:00:53.764 好了,那我甚麼時候想看到那個矩形呢? 00:00:54.236 --> 00:01:00.985 當滑鼠X小於200的時候 00:01:02.968 --> 00:01:07.465 但是當我走到下面,它還是反白了 00:01:07.465 --> 00:01:09.904 所以我也需要檢查滑鼠Y 00:01:09.904 --> 00:01:12.719 那我如何能同時檢查它們呢? 00:01:12.719 --> 00:01:14.829 這時候我們就得使用運算子「且」了 00:01:14.829 --> 00:01:18.070 當我們要檢查多於一個條件時 我們就得使用「且」這個運算子 00:01:18.070 --> 00:01:23.350 先寫&&,然後寫下一項條件 00:01:23.350 --> 00:01:26.324 滑鼠Y小於200 00:01:26.778 --> 00:01:30.807 現在這裡不再反白了 只有這裡,好極了! 00:01:30.807 --> 00:01:35.807 我們來處理另一個方格吧 來證明我們做對了 00:01:35.807 --> 00:01:38.936 我們只需要改變一點東西 00:01:38.936 --> 00:01:40.768 我們先抄下這個方格 00:01:40.768 --> 00:01:44.432 我們當然需要改寫條件 00:01:44.432 --> 00:01:45.819 才能讓它亮起來 00:01:45.819 --> 00:01:50.700 這一次,滑鼠X得大於200 00:01:50.700 --> 00:01:53.563 滑鼠Y仍然要小於200 00:01:53.563 --> 00:01:55.069 看看這多麼美! 00:01:55.069 --> 00:01:59.696 在四方格這個遊戲裡 當球碰到邊緣 00:01:59.696 --> 00:02:02.505 這些在中間和角落裡的線時 00:02:02.505 --> 00:02:04.501 我們總是會大喊「邊緣球」! 00:02:04.501 --> 00:02:10.205 我也想在這裡這樣做 讓我們先來寫「邊緣球!」 00:02:10.205 --> 00:02:15.958 我們在中間寫這句子,用紅色 因為那是很重要的 00:02:15.958 --> 00:02:19.767 我只希望球在邊緣時 這句子才會出現 00:02:20.128 --> 00:02:22.572 所以我們得新增一個 if 述句 00:02:22.572 --> 00:02:24.528 然後把程式碼移進去 00:02:25.608 --> 00:02:28.759 那我甚麼時候想它發生呢? 00:02:28.759 --> 00:02:30.197 中間這裡有幾條邊緣 00:02:30.197 --> 00:02:36.040 所以中間線是當滑鼠等於200的時候 00:02:37.327 --> 00:02:40.904 讓我們來看看,「邊緣球!」出現了嗎? 00:02:40.904 --> 00:02:44.636 在這裡了!「邊緣球!」 00:02:44.636 --> 00:02:49.422 嗯,中間線這裡行了 00:02:49.422 --> 00:02:52.295 但我也想在這條線看到那句子 00:02:52.295 --> 00:02:58.024 在這個情況下,滑鼠Y得等於200 00:02:58.527 --> 00:03:01.527 因為那是中間線所在的位置 00:03:02.257 --> 00:03:07.760 這不行,句子沒有顯示出來 00:03:08.323 --> 00:03:10.731 啊!原來只有在中間點才行! 00:03:10.731 --> 00:03:12.435 那是因為我使用了「且」 00:03:12.435 --> 00:03:16.269 只有當兩項條件同時符合時 句子才會出現 00:03:16.269 --> 00:03:18.389 所以只有中心這一點成功 00:03:18.389 --> 00:03:22.031 我其實想要的是 只要符合任何一項條件 00:03:22.031 --> 00:03:24.701 所以我們得使用「或」這個運算子 00:03:24.701 --> 00:03:27.323 運算子「或」是這個符號: || 00:03:27.323 --> 00:03:31.529 我們稱之為管道符號 你或許從來未使用過它們 00:03:31.529 --> 00:03:35.764 你得在鍵盤上把它找出來 一般來說都是在右上角的 00:03:35.764 --> 00:03:39.467 希望你的鍵盤上有這個符號吧! 00:03:39.467 --> 00:03:42.269 找到了嗎? 好了,讓我們看看這行不行! 00:03:42.269 --> 00:03:46.033 這裡沒問題,那裡也沒問題,太好了! 00:03:46.033 --> 00:03:49.120 我們能繼續新增更多條件 00:03:49.120 --> 00:03:52.704 你能無限地使用「且」跟「或」 00:03:52.704 --> 00:03:54.598 如果你想有六十項條件 00:03:54.598 --> 00:03:56.361 那也是可以的! 00:03:56.361 --> 00:03:58.331 我們還未完成畫布的邊緣呢 00:03:58.331 --> 00:04:04.436 當滑鼠X小於3 00:04:05.233 --> 00:04:07.965 那麼... 行了,就這一條小小的邊緣 00:04:07.965 --> 00:04:09.296 很好 00:04:09.296 --> 00:04:14.532 「或」滑鼠X大於397 00:04:15.133 --> 00:04:17.596 看看!我們成功了! 00:04:17.596 --> 00:04:20.534 我們把所有邊緣作同一樣的處理 00:04:20.534 --> 00:04:24.539 好極了!使用「且」跟「或」 00:04:24.539 --> 00:04:27.566 你就能在程式裡定下較複雜的條件 00:04:27.566 --> 00:04:30.469 那很好,因為世界是複雜的