[Script Info] Title: [Events] Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text Dialogue: 0,0:00:01.48,0:00:04.18,Default,,0000,0000,0000,,你或者並不認識這個函式:隨機 Dialogue: 0,0:00:04.18,0:00:07.34,Default,,0000,0000,0000,,它有兩個參數:下限跟上限 Dialogue: 0,0:00:07.34,0:00:10.59,Default,,0000,0000,0000,,在這兩個參數間任意產生一個數字 Dialogue: 0,0:00:10.59,0:00:14.39,Default,,0000,0000,0000,,這個程式所產生的數字\N將會介乎於0和1之間 Dialogue: 0,0:00:14.39,0:00:18.15,Default,,0000,0000,0000,,我們把這個數字以"text"函式\N呈現在右邊的畫板上 Dialogue: 0,0:00:18.15,0:00:21.87,Default,,0000,0000,0000,,括號裡的最後兩個參數\N是文字的x和y坐標 Dialogue: 0,0:00:21.87,0:00:25.56,Default,,0000,0000,0000,,我們能用"textSize"和"fill"\N來設定文字的大小和顏色 Dialogue: 0,0:00:25.56,0:00:27.100,Default,,0000,0000,0000,,要是我反覆按「重設」數次 Dialogue: 0,0:00:27.100,0:00:30.24,Default,,0000,0000,0000,,你就能看到隨機產生出來的數字 Dialogue: 0,0:00:30.24,0:00:33.63,Default,,0000,0000,0000,,你也能看到這些數字的精準度\N能達到小數點後三位 Dialogue: 0,0:00:33.63,0:00:35.10,Default,,0000,0000,0000,,現在的問題是... Dialogue: 0,0:00:35.10,0:00:38.36,Default,,0000,0000,0000,,我怎麼才能產生零或一\N這樣的整數呢? Dialogue: 0,0:00:38.36,0:00:41.79,Default,,0000,0000,0000,,我們可以用這個叫做“round”的函式 Dialogue: 0,0:00:41.79,0:00:45.75,Default,,0000,0000,0000,,它能讓任何一個帶有小數點的數字 Dialogue: 0,0:00:45.75,0:00:47.92,Default,,0000,0000,0000,,四捨五入成距離最近的整數 Dialogue: 0,0:00:47.92,0:00:51.83,Default,,0000,0000,0000,,讓我來新增一個叫做“integer”的變數 Dialogue: 0,0:00:51.83,0:00:53.92,Default,,0000,0000,0000,,設定"round“函式 Dialogue: 0,0:00:53.92,0:00:55.97,Default,,0000,0000,0000,,我們也可以把它顯示在屏幕上 Dialogue: 0,0:00:55.97,0:00:58.17,Default,,0000,0000,0000,,只要使用"text"函式就行了 Dialogue: 0,0:00:58.17,0:01:00.38,Default,,0000,0000,0000,,先寫text(interger Dialogue: 0,0:01:00.38,0:01:06.24,Default,,0000,0000,0000,,坐標是160和350 Dialogue: 0,0:01:06.24,0:01:12.12,Default,,0000,0000,0000,,它顯示出0.2314被四捨五入成0 Dialogue: 0,0:01:12.12,0:01:18.01,Default,,0000,0000,0000,,要是我改為4.6,捨入後就成為了5 Dialogue: 0,0:01:18.01,0:01:20.59,Default,,0000,0000,0000,,所以,如果我想隨機產出0或1 Dialogue: 0,0:01:20.59,0:01:24.26,Default,,0000,0000,0000,,我能把這個隨機而來 Dialogue: 0,0:01:24.26,0:01:27.37,Default,,0000,0000,0000,,在0與1之間的的數字 Dialogue: 0,0:01:28.01,0:01:30.60,Default,,0000,0000,0000,,放進"round"函式裡 Dialogue: 0,0:01:30.60,0:01:32.99,Default,,0000,0000,0000,,就像這樣,我把"number" Dialogue: 0,0:01:32.99,0:01:35.41,Default,,0000,0000,0000,,這樣抄過來 Dialogue: 0,0:01:35.41,0:01:37.01,Default,,0000,0000,0000,,你現在能看到 Dialogue: 0,0:01:37.01,0:01:39.54,Default,,0000,0000,0000,,每當隨機而來的數字小於0.5 Dialogue: 0,0:01:39.54,0:01:41.35,Default,,0000,0000,0000,,它就會被捨入成0 Dialogue: 0,0:01:41.35,0:01:44.78,Default,,0000,0000,0000,,而當隨機而來的數字大於或等於0.5 Dialogue: 0,0:01:44.78,0:01:46.75,Default,,0000,0000,0000,,它就會被捨入成1 Dialogue: 0,0:01:47.60,0:01:51.32,Default,,0000,0000,0000,,也許你能聯想到一種類似於扔硬幣的遊戲 Dialogue: 0,0:01:51.32,0:01:54.92,Default,,0000,0000,0000,,如果你扔得的結果是0\N你的朋友就得給你一塊錢 Dialogue: 0,0:01:54.92,0:01:57.59,Default,,0000,0000,0000,,如果你扔得的結果是1\N你的朋友就得給你十塊錢 Dialogue: 0,0:01:57.59,0:01:58.73,Default,,0000,0000,0000,,這遊戲不錯,對吧? Dialogue: 0,0:01:58.73,0:02:01.54,Default,,0000,0000,0000,,我們來看看這個扔硬幣的遊戲是怎麼玩的吧! Dialogue: 0,0:02:01.54,0:02:03.33,Default,,0000,0000,0000,,我們用一些圓形 Dialogue: 0,0:02:03.33,0:02:06.09,Default,,0000,0000,0000,,來充當硬幣 Dialogue: 0,0:02:06.09,0:02:10.60,Default,,0000,0000,0000,,我要在畫布中間畫數個圓形 Dialogue: 0,0:02:10.60,0:02:12.29,Default,,0000,0000,0000,,這就是我們的硬幣了 Dialogue: 0,0:02:12.29,0:02:15.28,Default,,0000,0000,0000,,噢!它把數字擋住了!\N我們把數字移高一點吧 Dialogue: 0,0:02:16.77,0:02:20.71,Default,,0000,0000,0000,,好了,我在想,要是我扔到0 Dialogue: 0,0:02:20.71,0:02:23.25,Default,,0000,0000,0000,,我就讓硬幣呈紫色 Dialogue: 0,0:02:23.25,0:02:28.08,Default,,0000,0000,0000,,要把硬幣呈紫色\N我只要用"fill"填上紫色就行了 Dialogue: 0,0:02:28.74,0:02:32.95,Default,,0000,0000,0000,,要是我扔到1\N我就讓硬幣呈黃色 Dialogue: 0,0:02:32.95,0:02:35.31,Default,,0000,0000,0000,,這枚硬幣是一面紫一面黃的 Dialogue: 0,0:02:35.31,0:02:37.78,Default,,0000,0000,0000,,幸運的是,我們對於寫if 述句已很熟練了 Dialogue: 0,0:02:37.79,0:02:39.33,Default,,0000,0000,0000,,讓這變得非常容易 Dialogue: 0,0:02:39.33,0:02:44.57,Default,,0000,0000,0000,,我們只需要說如果“integer"等於0 Dialogue: 0,0:02:44.57,0:02:48.22,Default,,0000,0000,0000,,(記得我們要用三個等號來表明相等嗎?) Dialogue: 0,0:02:48.22,0:02:53.11,Default,,0000,0000,0000,,我們就把圓形填成紫色 Dialogue: 0,0:02:53.54,0:02:57.64,Default,,0000,0000,0000,,如果“integer"等於1 Dialogue: 0,0:02:58.87,0:03:01.12,Default,,0000,0000,0000,,我們就得使用不同的"fill"函式 Dialogue: 0,0:03:02.28,0:03:04.34,Default,,0000,0000,0000,,才能把圓形填成黃色 Dialogue: 0,0:03:06.30,0:03:09.43,Default,,0000,0000,0000,,好了,成功了!唷呼! Dialogue: 0,0:03:09.43,0:03:11.41,Default,,0000,0000,0000,,但是,讓我們回想一下... Dialogue: 0,0:03:11.41,0:03:14.25,Default,,0000,0000,0000,,"integer"的數值永遠都只會是0或1,對吧? Dialogue: 0,0:03:14.25,0:03:15.77,Default,,0000,0000,0000,,是我們把它設計成這樣的 Dialogue: 0,0:03:15.77,0:03:18.93,Default,,0000,0000,0000,,那即是說,要麼這個述句的條件為真 Dialogue: 0,0:03:18.93,0:03:21.20,Default,,0000,0000,0000,,要麼這個述句的條件為真 Dialogue: 0,0:03:21.20,0:03:22.29,Default,,0000,0000,0000,,永遠都會是這樣 Dialogue: 0,0:03:22.29,0:03:24.68,Default,,0000,0000,0000,,我們已經討論過所有可能的情況了 Dialogue: 0,0:03:24.68,0:03:27.67,Default,,0000,0000,0000,,我們現在能用稍微不同的思路來做決定 Dialogue: 0,0:03:27.67,0:03:32.37,Default,,0000,0000,0000,,如果“integer”為0,硬幣便會是紫色的 Dialogue: 0,0:03:33.02,0:03:35.30,Default,,0000,0000,0000,,否則就是黃色 Dialogue: 0,0:03:35.93,0:03:38.24,Default,,0000,0000,0000,,你發現了嗎?\N我們並不需要在第二種情況裡 Dialogue: 0,0:03:38.24,0:03:40.59,Default,,0000,0000,0000,,說”integer“等於1哦! Dialogue: 0,0:03:40.59,0:03:41.80,Default,,0000,0000,0000,,我們只需要說 Dialogue: 0,0:03:41.80,0:03:44.88,Default,,0000,0000,0000,,「如果”integer“為0,就這麼做;\N其他情況時,就那麼做。」 Dialogue: 0,0:03:44.88,0:03:47.98,Default,,0000,0000,0000,,在程式世界裡\N我們以"else"函式代表「其他情況」 Dialogue: 0,0:03:47.98,0:03:49.24,Default,,0000,0000,0000,,來看看吧! Dialogue: 0,0:03:49.24,0:03:53.10,Default,,0000,0000,0000,,我現在要把第二個“if”條件換成“else” Dialogue: 0,0:03:53.10,0:03:54.62,Default,,0000,0000,0000,,那即是說 Dialogue: 0,0:03:54.62,0:03:57.53,Default,,0000,0000,0000,,如果這些括號裡的條件為真 Dialogue: 0,0:03:57.53,0:03:59.65,Default,,0000,0000,0000,,那麼就執行這個大括號內的程式碼 Dialogue: 0,0:03:59.65,0:04:02.43,Default,,0000,0000,0000,,其他情況時,就執行這個大括號內的程式碼 Dialogue: 0,0:04:02.80,0:04:06.26,Default,,0000,0000,0000,,有的時候我們甚至把“else”和尾括號放在同一行 Dialogue: 0,0:04:06.26,0:04:07.72,Default,,0000,0000,0000,,來提醒自己 Dialogue: 0,0:04:07.72,0:04:10.31,Default,,0000,0000,0000,,這兩組程式碼有非常緊密的聯繫 Dialogue: 0,0:04:10.31,0:04:13.80,Default,,0000,0000,0000,,你不能用“else”,除非前面你用了“if” Dialogue: 0,0:04:13.80,0:04:14.95,Default,,0000,0000,0000,,明白了嗎? Dialogue: 0,0:04:15.41,0:04:18.13,Default,,0000,0000,0000,,這也能幫助你記住 Dialogue: 0,0:04:18.13,0:04:23.14,Default,,0000,0000,0000,,不要把任何東西放在兩組程式碼之間\N例如 var y 等於0 Dialogue: 0,0:04:23.14,0:04:26.29,Default,,0000,0000,0000,,不然一切就都會被打亂了!\N所以別這麼做 Dialogue: 0,0:04:27.03,0:04:29.90,Default,,0000,0000,0000,,好了,現在我們認識了”if-else"這個語法 Dialogue: 0,0:04:29.90,0:04:32.66,Default,,0000,0000,0000,,在我們需要從兩種可能性之間\N做取捨的時候非常有用 Dialogue: 0,0:04:32.66,0:04:34.46,Default,,0000,0000,0000,,但如果我們有更多的可能性呢? Dialogue: 0,0:04:34.46,0:04:36.88,Default,,0000,0000,0000,,如果我要在0和2之間得出一個整數 Dialogue: 0,0:04:36.88,0:04:39.80,Default,,0000,0000,0000,,那我就有3個可能性:0、1、2 Dialogue: 0,0:04:39.80,0:04:42.98,Default,,0000,0000,0000,,那應該怎麼做呢?\N下回再續吧!