[Script Info] Title: [Events] Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text Dialogue: 0,0:00:01.46,0:00:03.04,Default,,0000,0000,0000,,現在,你認識了 while 迴圈 Dialogue: 0,0:00:03.01,0:00:05.24,Default,,0000,0000,0000,,讓我們談談\N另一種迴圈,for 迴圈。\N Dialogue: 0,0:00:05.81,0:00:07.40,Default,,0000,0000,0000,,這個 for 迴圈要用來讚美 Dialogue: 0,0:00:07.40,0:00:10.53,Default,,0000,0000,0000,,一種最好吃的披薩\N鳳梨披薩 Dialogue: 0,0:00:10.54,0:00:12.96,Default,,0000,0000,0000,,你可能會想:「我喜歡while 迴圈, Dialogue: 0,0:00:12.97,0:00:15.13,Default,,0000,0000,0000,,為什麼還要管\N其他的新迴圈?」 Dialogue: 0,0:00:15.14,0:00:17.33,Default,,0000,0000,0000,,好吧,很快你會發現\Nfor 迴圈 Dialogue: 0,0:00:17.33,0:00:20.63,Default,,0000,0000,0000,,是一種運用較短的方式\N編寫的while迴圈。 Dialogue: 0,0:00:20.64,0:00:22.69,Default,,0000,0000,0000,,所以,在我們檢查這個 for 迴圈之前, Dialogue: 0,0:00:22.69,0:00:26.32,Default,,0000,0000,0000,,讓我們先來看while迴圈\N這樣會更熟悉。 Dialogue: 0,0:00:26.32,0:00:28.53,Default,,0000,0000,0000,,我們一會兒就回來 for 迴圈這裡。 Dialogue: 0,0:00:28.53,0:00:31.27,Default,,0000,0000,0000,,所以,就像你所看過\N對while迴圈的簡介, Dialogue: 0,0:00:31.25,0:00:33.58,Default,,0000,0000,0000,,我們就由可變數 y 開始, Dialogue: 0,0:00:33.60,0:00:36.73,Default,,0000,0000,0000,,用位置 y 編寫訊息。 Dialogue: 0,0:00:36.73,0:00:38.50,Default,,0000,0000,0000,,我們說我們要繼續往前 Dialogue: 0,0:00:38.50,0:00:42.77,Default,,0000,0000,0000,,Y的長度要少於 300,\N並且每次y變動40。 Dialogue: 0,0:00:42.77,0:00:46.67,Default,,0000,0000,0000,,現在,只強調每一條\N要重複確認的訊息, Dialogue: 0,0:00:46.67,0:00:50.60,Default,,0000,0000,0000,,我們可以說:「鳳梨披薩是\N最讚的。」是個重要的資訊, Dialogue: 0,0:00:50.60,0:00:52.40,Default,,0000,0000,0000,,所以我們可能想要\N寫更多。 Dialogue: 0,0:00:52.40,0:00:55.27,Default,,0000,0000,0000,,因此我們應該從高一點的位置開始\N--所以我們更改--, Dialogue: 0,0:00:55.27,0:00:58.47,Default,,0000,0000,0000,,它應該繼續更長,\N所以我們使它變大些, Dialogue: 0,0:00:58.47,0:01:01.64,Default,,0000,0000,0000,,間隔應該小一點\N--你不覺得嗎?-- Dialogue: 0,0:01:01.64,0:01:03.61,Default,,0000,0000,0000,,嗯,這樣好一點。 Dialogue: 0,0:01:03.61,0:01:07.50,Default,,0000,0000,0000,,現在,讓我們來看看如何\N將while 迴圈變成 for 迴圈。 Dialogue: 0,0:01:07.51,0:01:09.57,Default,,0000,0000,0000,,我要將這個 while 迴圈注釋掉(/*), Dialogue: 0,0:01:09.57,0:01:14.03,Default,,0000,0000,0000,,所以你可以看到\N我正在照我的意思做。 Dialogue: 0,0:01:14.03,0:01:19.84,Default,,0000,0000,0000,,而且我們將建立一個for迴圈\N並留一些空間之後填寫。 Dialogue: 0,0:01:19.84,0:01:22.54,Default,,0000,0000,0000,,真正重要的是\N做出有別以往的 for 迴圈, Dialogue: 0,0:01:22.54,0:01:26.38,Default,,0000,0000,0000,,它不只是一件事在這裡面,\N它實際上是三件事。 Dialogue: 0,0:01:26.38,0:01:27.93,Default,,0000,0000,0000,,我們這麼對電腦下指令, Dialogue: 0,0:01:27.93,0:01:31.20,Default,,0000,0000,0000,,透過運用這些分號\N分隔成三部分, Dialogue: 0,0:01:31.54,0:01:34.47,Default,,0000,0000,0000,,我們會有一部分在這裡,\N這裡一部分,這裡一部分, Dialogue: 0,0:01:34.47,0:01:37.33,Default,,0000,0000,0000,,然後,內迴圈,\N就像我們之前的一樣。 Dialogue: 0,0:01:37.33,0:01:39.58,Default,,0000,0000,0000,,所以,每個部分裡有什麼東西? Dialogue: 0,0:01:39.58,0:01:45.87,Default,,0000,0000,0000,,你可以把它當作一個起點\N或初始化, Dialogue: 0,0:01:45.87,0:01:47.97,Default,,0000,0000,0000,,然後我們放一個分號, Dialogue: 0,0:01:47.97,0:01:50.99,Default,,0000,0000,0000,,再來,排序的指令要重複多長, Dialogue: 0,0:01:52.12,0:01:55.97,Default,,0000,0000,0000,,最後我們要產生某種改變。 Dialogue: 0,0:01:57.17,0:01:59.63,Default,,0000,0000,0000,,因此,要與while 迴圈如何相互對應? Dialogue: 0,0:01:59.63,0:02:01.07,Default,,0000,0000,0000,,我們可以說,這真的很具體, Dialogue: 0,0:02:01.08,0:02:04.13,Default,,0000,0000,0000,,將可變數 y的起點\N設置在這裡, Dialogue: 0,0:02:04.13,0:02:08.88,Default,,0000,0000,0000,,因此,我們以複製和粘貼,\N到第一部分的 for 迴圈。 Dialogue: 0,0:02:08.88,0:02:13.40,Default,,0000,0000,0000,,同樣,我們可以說\N這中間部分在描述 Dialogue: 0,0:02:13.40,0:02:17.20,Default,,0000,0000,0000,,我們應該繼續維持多長時間,\N那放在中間。 Dialogue: 0,0:02:17.69,0:02:24.74,Default,,0000,0000,0000,,我們說更改發生在終點這裡,\N我們會把這個放在 for 迴圈的終點。 Dialogue: 0,0:02:25.70,0:02:29.52,Default,,0000,0000,0000,,這三個部分必須按照這個順序\N在你的 for 迴圈出現。 Dialogue: 0,0:02:29.52,0:02:32.07,Default,,0000,0000,0000,,你開始時都必須如此描述 Dialogue: 0,0:02:32.07,0:02:34.29,Default,,0000,0000,0000,,作為可變數\N應該這樣開始。 Dialogue: 0,0:02:34.30,0:02:35.57,Default,,0000,0000,0000,,這是27 Dialogue: 0,0:02:35.58,0:02:41.56,Default,,0000,0000,0000,,然後你描述繼續做多長。\N重複次數少於 354。 Dialogue: 0,0:02:41.56,0:02:44.50,Default,,0000,0000,0000,,然後你需要把\N你打算更改的東西放上去。 Dialogue: 0,0:02:44.50,0:02:47.84,Default,,0000,0000,0000,,所以這裡我們要更改\N由增加 y 到24。 Dialogue: 0,0:02:48.75,0:02:50.94,Default,,0000,0000,0000,,最後,你只需要操做 Dialogue: 0,0:02:50.94,0:02:52.87,Default,,0000,0000,0000,,不管你想要\N裡面的 for 迴圈做什麼。 Dialogue: 0,0:02:52.87,0:02:54.67,Default,,0000,0000,0000,,所以我們繼續\N將文字寫在那裡。 Dialogue: 0,0:02:54.67,0:02:57.34,Default,,0000,0000,0000,,然後,有了!\N鳳梨披薩是最讚的。 Dialogue: 0,0:02:57.34,0:02:59.23,Default,,0000,0000,0000,,每個人都會知道。 Dialogue: 0,0:02:59.24,0:03:03.40,Default,,0000,0000,0000,,現在,讓我們更貼近地思考\N這個 for 迴圈發生了什麼? Dialogue: 0,0:03:03.40,0:03:07.77,Default,,0000,0000,0000,,如果我們想要更改它的起點,\N好吧,我們只需從這裡開始更改。 Dialogue: 0,0:03:07.77,0:03:11.17,Default,,0000,0000,0000,,如果我們想要更改它的終點,\N我們只需更改該終點。 Dialogue: 0,0:03:11.17,0:03:16.03,Default,,0000,0000,0000,,如果我們想要更改間距,\N我們只需更改增量值。 Dialogue: 0,0:03:17.37,0:03:20.64,Default,,0000,0000,0000,,我們還可以更改\N--像 while 迴圈那樣-- Dialogue: 0,0:03:20.64,0:03:23.44,Default,,0000,0000,0000,,X 對我們有什麼作用。 Dialogue: 0,0:03:28.45,0:03:30.54,Default,,0000,0000,0000,,for 迴圈有件會讓人困惑的事情是 Dialogue: 0,0:03:30.87,0:03:32.97,Default,,0000,0000,0000,,就是要記住這些分號的做用。 Dialogue: 0,0:03:32.97,0:03:37.16,Default,,0000,0000,0000,,你要記住,他們總是得要在那裡\N分開那3部分。 Dialogue: 0,0:03:37.17,0:03:38.87,Default,,0000,0000,0000,,如果它們不在那裡, Dialogue: 0,0:03:38.87,0:03:41.46,Default,,0000,0000,0000,,我們就會收到\N跟我們 for 迴圈有關的, Dialogue: 0,0:03:41.47,0:03:42.60,Default,,0000,0000,0000,,一些怪怪的錯誤訊息 Dialogue: 0,0:03:42.60,0:03:45.63,Default,,0000,0000,0000,,所以只要一看到\N就仔細檢查它們。 Dialogue: 0,0:03:45.64,0:03:48.98,Default,,0000,0000,0000,,你也可能會過度熱心地\N額外添加一組在終點,\N Dialogue: 0,0:03:48.98,0:03:53.65,Default,,0000,0000,0000,,但,你只要記住分號\N只是為了要成3個部分, Dialogue: 0,0:03:53.65,0:03:56.87,Default,,0000,0000,0000,,而我們可以讓這最後的分號\N不分隔任何東西, Dialogue: 0,0:03:56.87,0:04:01.16,Default,,0000,0000,0000,,它只跟在後面,所以我們可以\N擺脫它,因為我們不需要它。 Dialogue: 0,0:04:01.16,0:04:04.33,Default,,0000,0000,0000,,現在,我知道你的眼睛可能\N盯得有點累 Dialogue: 0,0:04:04.33,0:04:06.50,Default,,0000,0000,0000,,這些 for 迴圈被轉化為\Nwhile迴圈再回來, Dialogue: 0,0:04:06.70,0:04:08.64,Default,,0000,0000,0000,,讓我們再做一次, Dialogue: 0,0:04:08.64,0:04:10.56,Default,,0000,0000,0000,,你就可以真正看到for 迴圈 Dialogue: 0,0:04:10.56,0:04:13.29,Default,,0000,0000,0000,,只是另一種跟while迴圈\N類似地簡單編寫方式 Dialogue: 0,0:04:13.29,0:04:15.77,Default,,0000,0000,0000,,你會很有自信地\N理解 Dialogue: 0,0:04:15.77,0:04:18.50,Default,,0000,0000,0000,,如何從for迴圈\N回到while迴圈。 Dialogue: 0,0:04:18.80,0:04:22.86,Default,,0000,0000,0000,,任何一種 for 迴圈你都可以轉換回來\N不只是這一個。 Dialogue: 0,0:04:22.86,0:04:24.85,Default,,0000,0000,0000,,我們要做的第一件事是想一想 Dialogue: 0,0:04:24.86,0:04:28.19,Default,,0000,0000,0000,,在for 迴圈裡的第一個值\N要放在哪裡 Dialogue: 0,0:04:28.70,0:04:31.06,Default,,0000,0000,0000,,既然它的作用只是\N初始化這個可變數, Dialogue: 0,0:04:31.06,0:04:34.06,Default,,0000,0000,0000,,記住,一定要寫在while迴圈之外,\N而不是while迴圈裡面, Dialogue: 0,0:04:34.06,0:04:35.80,Default,,0000,0000,0000,,而且它應該寫在上面, Dialogue: 0,0:04:35.80,0:04:38.36,Default,,0000,0000,0000,,在運作while迴圈時\N我們需要它能同時運作。 Dialogue: 0,0:04:38.37,0:04:40.63,Default,,0000,0000,0000,,再來你會想接下來\N會是什麼情況 Dialogue: 0,0:04:40.63,0:04:41.83,Default,,0000,0000,0000,,--那很簡單-- Dialogue: 0,0:04:41.83,0:04:45.94,Default,,0000,0000,0000,,通常要下停止條件\N或重複/直到條件 Dialogue: 0,0:04:45.94,0:04:47.57,Default,,0000,0000,0000,,必須進來這裡, Dialogue: 0,0:04:47.57,0:04:51.87,Default,,0000,0000,0000,,我們要描述當 y \N小於313,我們就會繼續向前 Dialogue: 0,0:04:52.87,0:04:54.33,Default,,0000,0000,0000,,最終,這個改變。 Dialogue: 0,0:04:54.33,0:04:56.57,Default,,0000,0000,0000,,我們總是將改變放在\Nwhile 迴圈之後 Dialogue: 0,0:04:56.57,0:04:59.64,Default,,0000,0000,0000,,在迴圈中,我們已經看到了,\N所以我們應該在這裡那麼做。 Dialogue: 0,0:04:59.64,0:05:04.24,Default,,0000,0000,0000,,現在,我們只需要移動這段命令\N到這裡面,好了!過來了!。 Dialogue: 0,0:05:04.70,0:05:09.80,Default,,0000,0000,0000,,注釋掉這整個迴圈,你看\N我們讓同樣的事又發生了。 Dialogue: 0,0:05:11.56,0:05:13.18,Default,,0000,0000,0000,,希望到目前為止,你可以明白 Dialogue: 0,0:05:13.18,0:05:15.68,Default,,0000,0000,0000,,這個新的 for 迴圈\N不是真的那麼必要。 Dialogue: 0,0:05:16.13,0:05:20.10,Default,,0000,0000,0000,,我們可以讓我們的程式設計人生\N都像這樣寫迴圈。 Dialogue: 0,0:05:20.10,0:05:23.97,Default,,0000,0000,0000,,但是,for 迴圈能這麼簡潔\N有點令人印象深刻。 Dialogue: 0,0:05:23.97,0:05:27.60,Default,,0000,0000,0000,,一旦你習慣它的運作原理\N就會更明白些。 Dialogue: 0,0:05:27.60,0:05:29.40,Default,,0000,0000,0000,,我們是如何開始一個可變數, Dialogue: 0,0:05:29.40,0:05:31.09,Default,,0000,0000,0000,,我們在說要持續多長, Dialogue: 0,0:05:31.09,0:05:33.37,Default,,0000,0000,0000,,然後在這裡更改這個可變數。 Dialogue: 0,0:05:33.37,0:05:36.73,Default,,0000,0000,0000,,所以,如果你真的很討厭 for迴圈,\N你根本不需要用它, Dialogue: 0,0:05:36.73,0:05:38.46,Default,,0000,0000,0000,,但你應該習慣看它們。 Dialogue: 0,0:05:38.46,0:05:40.21,Default,,0000,0000,0000,,如果它們令人困惑,只要記得 Dialogue: 0,0:05:40.21,0:05:42.96,Default,,0000,0000,0000,,你可以將它們轉換回\N像這樣的while迴圈。 Dialogue: 0,0:05:42.96,0:05:46.50,Default,,0000,0000,0000,,如果你喜歡冒險,\N試著在新程式中使用for迴圈, Dialogue: 0,0:05:46.50,0:05:48.66,Default,,0000,0000,0000,,或是回到你原來簡單點的\Nwhile 迴圈, Dialogue: 0,0:05:48.66,0:05:52.10,Default,,0000,0000,0000,,然後將它們轉換成 for 迴圈,如果合適的話。 Dialogue: 0,0:05:52.10,0:05:56.70,Default,,0000,0000,0000,,最後提醒:你不能總是將while迴圈\N轉換成for 迴圈, Dialogue: 0,0:05:56.70,0:05:59.30,Default,,0000,0000,0000,,只有當它們\N真的像這麼簡單的形式, Dialogue: 0,0:05:59.30,0:06:01.94,Default,,0000,0000,0000,,你可以很清楚地掌握\N要開始的可變數, Dialogue: 0,0:06:01.94,0:06:05.53,Default,,0000,0000,0000,,要進行多長,\N以及要如何改變。