[Script Info] Title: [Events] Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text Dialogue: 0,0:00:01.24,0:00:03.66,Default,,0000,0000,0000,,這裡是我們上次教到的擲幣遊戲 Dialogue: 0,0:00:03.66,0:00:06.60,Default,,0000,0000,0000,,由產生 0 到 1 的隨機數字開始 Dialogue: 0,0:00:06.60,0:00:08.88,Default,,0000,0000,0000,,我們接著將數字取到最接近的整數 Dialogue: 0,0:00:08.88,0:00:12.21,Default,,0000,0000,0000,,所以這給了我們一個由 0 到 1的數字 Dialogue: 0,0:00:12.21,0:00:15.91,Default,,0000,0000,0000,,然後我們用一個圓勾勒了我們的超現實錢幣 Dialogue: 0,0:00:15.91,0:00:18.91,Default,,0000,0000,0000,,根據他的數字來決定他是紫色或是黃色 Dialogue: 0,0:00:18.91,0:00:20.99,Default,,0000,0000,0000,,而這裡是我們的程式碼 Dialogue: 0,0:00:20.99,0:00:24.16,Default,,0000,0000,0000,,所以我們說 “如果整數跟0相同,將色彩填為紫色” Dialogue: 0,0:00:24.16,0:00:25.82,Default,,0000,0000,0000,,"除此之外,則填為黃色" Dialogue: 0,0:00:25.82,0:00:27.92,Default,,0000,0000,0000,,然後我們將錢幣畫在下面這裡 Dialogue: 0,0:00:27.92,0:00:30.92,Default,,0000,0000,0000,,不過我剛決定其實我的錢幣有三面 Dialogue: 0,0:00:30.92,0:00:32.45,Default,,0000,0000,0000,,對,一個三面的錢幣 Dialogue: 0,0:00:32.46,0:00:34.19,Default,,0000,0000,0000,,所以,讓我們加入第三面 Dialogue: 0,0:00:34.19,0:00:37.11,Default,,0000,0000,0000,,一開始將數字設在 0 到 2 之間 Dialogue: 0,0:00:37.11,0:00:41.53,Default,,0000,0000,0000,,四捨五入後,我們會得到 0, 1, 或 2 三個整數 Dialogue: 0,0:00:41.53,0:00:45.61,Default,,0000,0000,0000,,但是我們的繪圖程式只會計算兩種情況 Dialogue: 0,0:00:45.61,0:00:48.81,Default,,0000,0000,0000,,所以如果整數是 0,使其紫色\N除此之外,使其黃色 Dialogue: 0,0:00:48.82,0:00:51.88,Default,,0000,0000,0000,,不過現在,除此之外可以指 1 或 2 Dialogue: 0,0:00:51.88,0:00:54.93,Default,,0000,0000,0000,,但是等一下,如果我做跟剛才一樣的事情 Dialogue: 0,0:00:54.93,0:00:56.67,Default,,0000,0000,0000,,但是是在這個 "else" 括號裡呢? Dialogue: 0,0:00:56.68,0:01:00.75,Default,,0000,0000,0000,,所以我要說:如果整數是 1 Dialogue: 0,0:01:00.75,0:01:04.93,Default,,0000,0000,0000,,則填入黃色,跟之前一樣 Dialogue: 0,0:01:05.92,0:01:09.88,Default,,0000,0000,0000,,否則,填入紅色 Dialogue: 0,0:01:09.85,0:01:11.40,Default,,0000,0000,0000,,紅色不錯 Dialogue: 0,0:01:11.40,0:01:12.58,Default,,0000,0000,0000,,所以這個的意思是 Dialogue: 0,0:01:12.58,0:01:15.48,Default,,0000,0000,0000,,如果整數是0,填入紫色 Dialogue: 0,0:01:15.48,0:01:18.98,Default,,0000,0000,0000,,除此之外,如果整數是1則填入黃色 Dialogue: 0,0:01:18.98,0:01:20.33,Default,,0000,0000,0000,,除此之外 Dialogue: 0,0:01:20.33,0:01:24.61,Default,,0000,0000,0000,,如果不是 0,也不是 1\N那就是 2,我們填入紅色 Dialogue: 0,0:01:24.63,0:01:28.58,Default,,0000,0000,0000,,我按了重新開始幾次\N它運作了!哇呼! Dialogue: 0,0:01:28.57,0:01:30.86,Default,,0000,0000,0000,,所以如果之後我想要為錢幣加入更多的面 Dialogue: 0,0:01:30.87,0:01:35.68,Default,,0000,0000,0000,,我可以到上面這裡,改為 0 到 3\N然後將 "else" 的括號變得更深 Dialogue: 0,0:01:35.68,0:01:37.99,Default,,0000,0000,0000,,加入更多 "if-else",如此重複多次 Dialogue: 0,0:01:37.99,0:01:40.16,Default,,0000,0000,0000,,直到我有許多個嵌套區塊 Dialogue: 0,0:01:40.16,0:01:44.70,Default,,0000,0000,0000,,而我將會發現這個程式碼很噁心,我是指很雜亂 Dialogue: 0,0:01:44.70,0:01:48.76,Default,,0000,0000,0000,,程式碼應該要易於閱讀而且漂亮,而不是盡可能地醜陋 Dialogue: 0,0:01:48.76,0:01:50.73,Default,,0000,0000,0000,,所以以下是我要做的事情 Dialogue: 0,0:01:50.73,0:01:52.90,Default,,0000,0000,0000,,當我在這個 else 括弧裡 Dialogue: 0,0:01:52.90,0:01:55.67,Default,,0000,0000,0000,,只有一個 "if 述句"\N或者是一個 if-else 述句 Dialogue: 0,0:01:55.68,0:01:58.75,Default,,0000,0000,0000,,意思是說我們在這些區塊外面沒有要做任何事情 Dialogue: 0,0:01:58.75,0:02:00.54,Default,,0000,0000,0000,,我們沒有要設定顏色 Dialogue: 0,0:02:00.55,0:02:04.76,Default,,0000,0000,0000,,我們沒有要做更多的 if 數據,我們不做任何事 Dialogue: 0,0:02:04.77,0:02:08.44,Default,,0000,0000,0000,,我們所有的就是一個 if 述句,頂多可能跟著一個 else 括號 Dialogue: 0,0:02:08.44,0:02:12.76,Default,,0000,0000,0000,,然後我們可以將前面的情況跟這個情況結合 Dialogue: 0,0:02:12.76,0:02:17.07,Default,,0000,0000,0000,,然後說,如果這個整數跟 1 相同\N那就將填色設為黃色 Dialogue: 0,0:02:17.07,0:02:19.95,Default,,0000,0000,0000,,然後這個 else括號不會在別的地方 Dialogue: 0,0:02:19.95,0:02:22.32,Default,,0000,0000,0000,,只會在自己的最後面出現 Dialogue: 0,0:02:22.32,0:02:24.59,Default,,0000,0000,0000,,太好了!所以現在這個的意思是 Dialogue: 0,0:02:24.59,0:02:27.33,Default,,0000,0000,0000,,如果這個整數為 0,將顏色定為紫色 Dialogue: 0,0:02:27.33,0:02:30.23,Default,,0000,0000,0000,,除此之外,如果整數跟 1 相同,則填為黃色 Dialogue: 0,0:02:30.24,0:02:34.48,Default,,0000,0000,0000,,除此之外,如果都不是前兩者,將顏色設為紅色 Dialogue: 0,0:02:34.48,0:02:37.74,Default,,0000,0000,0000,,我按了重新開始幾次,你可以看看它們仍然成立 Dialogue: 0,0:02:37.74,0:02:41.82,Default,,0000,0000,0000,,太棒了!最酷的地方是\N我們可以想要有多少 "else-if" 就有多少 Dialogue: 0,0:02:41.82,0:02:44.70,Default,,0000,0000,0000,,讓我更簡單地能為硬幣加入更多面 Dialogue: 0,0:02:44.70,0:02:48.01,Default,,0000,0000,0000,,所以讓我們現在來試試看,我將要做一個數字介於 0 到 3 之間 Dialogue: 0,0:02:48.00,0:02:51.75,Default,,0000,0000,0000,,然後加入更多 "else" Dialogue: 0,0:02:51.76,0:02:55.91,Default,,0000,0000,0000,,這代表了如果整數是 2 Dialogue: 0,0:02:55.92,0:02:59.66,Default,,0000,0000,0000,,我們會將顏色設為......\N因為之前是紅色我們就繼續將它設為紅色 Dialogue: 0,0:02:59.66,0:03:03.29,Default,,0000,0000,0000,,然後這個最後一個 "else" 會代表整數為 3 時 Dialogue: 0,0:03:03.29,0:03:07.53,Default,,0000,0000,0000,,將其顏色填為藍色,太棒了 Dialogue: 0,0:03:08.48,0:03:09.58,Default,,0000,0000,0000,,好 Dialogue: 0,0:03:09.59,0:03:13.12,Default,,0000,0000,0000,,所以為了完成這個,你必須每次都用一個"if 述句"開頭 Dialogue: 0,0:03:13.12,0:03:16.91,Default,,0000,0000,0000,,然後你就可以想要多少 "else-if" 就有多少 Dialogue: 0,0:03:16.91,0:03:18.70,Default,,0000,0000,0000,,然後最後面這個東西是選擇性的可有可無 Dialogue: 0,0:03:18.70,0:03:19.93,Default,,0000,0000,0000,,我們沒有這個也可以完成 Dialogue: 0,0:03:19.93,0:03:22.25,Default,,0000,0000,0000,,然而也有可能這些全部都是錯誤的 Dialogue: 0,0:03:22.25,0:03:24.16,Default,,0000,0000,0000,,所以沒有任何一個括號會被執行 Dialogue: 0,0:03:24.16,0:03:27.20,Default,,0000,0000,0000,,但是只要我們還有這些在這裡 Dialogue: 0,0:03:27.20,0:03:30.48,Default,,0000,0000,0000,,那麼至少有一個括號會被執行 Dialogue: 0,0:03:30.48,0:03:34.02,Default,,0000,0000,0000,,可以嗎?這裡有一件事情並不是那麼重要 Dialogue: 0,0:03:34.02,0:03:37.02,Default,,0000,0000,0000,,如果你說 if else-if else-if else Dialogue: 0,0:03:37.02,0:03:41.93,Default,,0000,0000,0000,,或只是一些我們開頭就有的舊的敘述 Dialogue: 0,0:03:41.93,0:03:45.54,Default,,0000,0000,0000,,所以如果整數跟 3 相同 Dialogue: 0,0:03:45.54,0:03:47.73,Default,,0000,0000,0000,,這是因為絕對不可能 Dialogue: 0,0:03:47.73,0:03:51.20,Default,,0000,0000,0000,,有一個整數同時是 0, 1, 2 或是 3 Dialogue: 0,0:03:51.20,0:03:54.22,Default,,0000,0000,0000,,好,所以這些情況不會同時發生 Dialogue: 0,0:03:54.22,0:03:56.61,Default,,0000,0000,0000,,只有一種方式會被執行 Dialogue: 0,0:03:56.61,0:03:58.28,Default,,0000,0000,0000,,但不會永遠都是這樣 Dialogue: 0,0:03:58.28,0:04:01.64,Default,,0000,0000,0000,,如果我們創造一個跟這個很相似的遊戲,但我們不需要取整數? Dialogue: 0,0:04:01.64,0:04:04.48,Default,,0000,0000,0000,,所以我要把取整數的這個部分刪掉 Dialogue: 0,0:04:04.48,0:04:06.64,Default,,0000,0000,0000,,還有另一個將圓畫到螢幕上的部份程式碼 Dialogue: 0,0:04:06.64,0:04:09.28,Default,,0000,0000,0000,,讓我們來制定一些新的規則 Dialogue: 0,0:04:09.28,0:04:12.64,Default,,0000,0000,0000,,所以我仍然在創造一些介於 0 到 3 之間的數字 Dialogue: 0,0:04:12.64,0:04:15.32,Default,,0000,0000,0000,,然後放一些定點在我們的數線上 Dialogue: 0,0:04:16.82,0:04:22.78,Default,,0000,0000,0000,,如果說這個數字介於 0 到 1 之間,我們將它填為紫色 Dialogue: 0,0:04:23.38,0:04:26.64,Default,,0000,0000,0000,,噢,這根本看起來不像一個 p,不過你懂的,ok Dialogue: 0,0:04:26.64,0:04:30.50,Default,,0000,0000,0000,,然後如果他介於 1 和 2 之間,我們將它設定為黃色 Dialogue: 0,0:04:30.50,0:04:35.53,Default,,0000,0000,0000,,而如果它介於 2 和 3 之間,則設定為紅色 Dialogue: 0,0:04:35.53,0:04:39.29,Default,,0000,0000,0000,,太好了。讓我們來試試如何用 "if" 和 "else-if" 來設定它 Dialogue: 0,0:04:39.29,0:04:43.88,Default,,0000,0000,0000,,所以我由 “如果這個數字比1小” 開始 Dialogue: 0,0:04:43.88,0:04:46.02,Default,,0000,0000,0000,,所以如果數字比 1 小 Dialogue: 0,0:04:46.02,0:04:50.12,Default,,0000,0000,0000,,而我知道數字介於 0 到 3 之間\N而他一定是在這個範圍裡面 Dialogue: 0,0:04:50.96,0:04:53.13,Default,,0000,0000,0000,,那麼我會將顏色設為紫色 Dialogue: 0,0:04:56.07,0:05:00.18,Default,,0000,0000,0000,,除此之外,如果數字比 2 小 Dialogue: 0,0:05:00.84,0:05:05.32,Default,,0000,0000,0000,,那麼我會將顏色設為黃色,255 Dialogue: 0,0:05:06.70,0:05:12.18,Default,,0000,0000,0000,,除此之外,我將顏色設為紅色 Dialogue: 0,0:05:13.26,0:05:16.26,Default,,0000,0000,0000,,太好了,如我們預想般地運作了 Dialogue: 0,0:05:16.26,0:05:19.69,Default,,0000,0000,0000,,所以如果數字小於1\N再一次的,是這個範圍 Dialogue: 0,0:05:19.69,0:05:23.60,Default,,0000,0000,0000,,除此之外,如果數字介於 1 和 2 之間 Dialogue: 0,0:05:23.60,0:05:26.73,Default,,0000,0000,0000,,所以在這個範圍裡,我們將把顏色設為黃色 Dialogue: 0,0:05:26.73,0:05:29.86,Default,,0000,0000,0000,,除此之外,它必定大於或等於 2 Dialogue: 0,0:05:29.86,0:05:31.90,Default,,0000,0000,0000,,所以它將落在這個範圍裡 Dialogue: 0,0:05:31.90,0:05:33.28,Default,,0000,0000,0000,,現在有另一個情況 Dialogue: 0,0:05:33.28,0:05:36.28,Default,,0000,0000,0000,,當我們不能只說 “當數字小於2時” Dialogue: 0,0:05:36.28,0:05:39.65,Default,,0000,0000,0000,,或是 “當數字小於3”時 Dialogue: 0,0:05:39.65,0:05:42.93,Default,,0000,0000,0000,,因為如果數字比1小,那麼數字就一定比2小 Dialogue: 0,0:05:42.93,0:05:44.90,Default,,0000,0000,0000,,那麼也將小於3 Dialogue: 0,0:05:44.90,0:05:46.78,Default,,0000,0000,0000,,所以我們的錢幣\N將永遠是紅色的 Dialogue: 0,0:05:46.78,0:05:50.78,Default,,0000,0000,0000,,而這就是為什麼在這個情況裡\N有 ”else-if" 會非常有幫助