0:00:01.459,0:00:03.043 現在,你認識了 while 迴圈 0:00:03.014,0:00:05.242 讓我們談談[br]另一種迴圈,for 迴圈。[br] 0:00:05.811,0:00:07.397 這個 for 迴圈要用來讚美 0:00:07.398,0:00:10.534 一種最好吃的披薩[br]鳳梨披薩 0:00:10.535,0:00:12.965 你可能會想:「我喜歡while 迴圈, 0:00:12.966,0:00:15.134 為什麼還要管[br]其他的新迴圈?」 0:00:15.135,0:00:17.333 好吧,很快你會發現[br]for 迴圈 0:00:17.334,0:00:20.634 是一種運用較短的方式[br]編寫的while迴圈。 0:00:20.635,0:00:22.693 所以,在我們檢查這個 for 迴圈之前, 0:00:22.694,0:00:26.316 讓我們先來看while迴圈[br]這樣會更熟悉。 0:00:26.317,0:00:28.532 我們一會兒就回來 for 迴圈這裡。 0:00:28.533,0:00:31.266 所以,就像你所看過[br]對while迴圈的簡介, 0:00:31.250,0:00:33.584 我們就由可變數 y 開始, 0:00:33.604,0:00:36.728 用位置 y 編寫訊息。 0:00:36.729,0:00:38.498 我們說我們要繼續往前 0:00:38.499,0:00:42.767 Y的長度要少於 300,[br]並且每次y變動40。 0:00:42.768,0:00:46.668 現在,只強調每一條[br]要重複確認的訊息, 0:00:46.669,0:00:50.600 我們可以說:「鳳梨披薩是[br]最讚的。」是個重要的資訊, 0:00:50.601,0:00:52.400 所以我們可能想要[br]寫更多。 0:00:52.401,0:00:55.268 因此我們應該從高一點的位置開始[br]--所以我們更改--, 0:00:55.269,0:00:58.466 它應該繼續更長,[br]所以我們使它變大些, 0:00:58.467,0:01:01.636 間隔應該小一點[br]--你不覺得嗎?-- 0:01:01.637,0:01:03.612 嗯,這樣好一點。 0:01:03.613,0:01:07.505 現在,讓我們來看看如何[br]將while 迴圈變成 for 迴圈。 0:01:07.506,0:01:09.567 我要將這個 while 迴圈注釋掉(/*), 0:01:09.568,0:01:14.027 所以你可以看到[br]我正在照我的意思做。 0:01:14.028,0:01:19.836 而且我們將建立一個for迴圈[br]並留一些空間之後填寫。 0:01:19.837,0:01:22.539 真正重要的是[br]做出有別以往的 for 迴圈, 0:01:22.540,0:01:26.377 它不只是一件事在這裡面,[br]它實際上是三件事。 0:01:26.378,0:01:27.932 我們這麼對電腦下指令, 0:01:27.933,0:01:31.201 透過運用這些分號[br]分隔成三部分, 0:01:31.536,0:01:34.473 我們會有一部分在這裡,[br]這裡一部分,這裡一部分, 0:01:34.474,0:01:37.331 然後,內迴圈,[br]就像我們之前的一樣。 0:01:37.332,0:01:39.579 所以,每個部分裡有什麼東西? 0:01:39.580,0:01:45.866 你可以把它當作一個起點[br]或初始化, 0:01:45.867,0:01:47.966 然後我們放一個分號, 0:01:47.967,0:01:50.994 再來,排序的指令要重複多長, 0:01:52.115,0:01:55.967 最後我們要產生某種改變。 0:01:57.174,0:01:59.630 因此,要與while 迴圈如何相互對應? 0:01:59.631,0:02:01.074 我們可以說,這真的很具體, 0:02:01.075,0:02:04.133 將可變數 y的起點[br]設置在這裡, 0:02:04.134,0:02:08.880 因此,我們以複製和粘貼,[br]到第一部分的 for 迴圈。 0:02:08.881,0:02:13.400 同樣,我們可以說[br]這中間部分在描述 0:02:13.401,0:02:17.196 我們應該繼續維持多長時間,[br]那放在中間。 0:02:17.687,0:02:24.743 我們說更改發生在終點這裡,[br]我們會把這個放在 for 迴圈的終點。 0:02:25.698,0:02:29.518 這三個部分必須按照這個順序[br]在你的 for 迴圈出現。 0:02:29.519,0:02:32.066 你開始時都必須如此描述 0:02:32.067,0:02:34.294 作為可變數[br]應該這樣開始。 0:02:34.295,0:02:35.574 這是27 0:02:35.575,0:02:41.562 然後你描述繼續做多長。[br]重複次數少於 354。 0:02:41.563,0:02:44.496 然後你需要把[br]你打算更改的東西放上去。 0:02:44.497,0:02:47.835 所以這裡我們要更改[br]由增加 y 到24。 0:02:48.747,0:02:50.944 最後,你只需要操做 0:02:50.945,0:02:52.866 不管你想要[br]裡面的 for 迴圈做什麼。 0:02:52.867,0:02:54.671 所以我們繼續[br]將文字寫在那裡。 0:02:54.671,0:02:57.337 然後,有了![br]鳳梨披薩是最讚的。 0:02:57.338,0:02:59.234 每個人都會知道。 0:02:59.235,0:03:03.397 現在,讓我們更貼近地思考[br]這個 for 迴圈發生了什麼? 0:03:03.398,0:03:07.767 如果我們想要更改它的起點,[br]好吧,我們只需從這裡開始更改。 0:03:07.768,0:03:11.166 如果我們想要更改它的終點,[br]我們只需更改該終點。 0:03:11.167,0:03:16.034 如果我們想要更改間距,[br]我們只需更改增量值。 0:03:17.367,0:03:20.641 我們還可以更改[br]--像 while 迴圈那樣-- 0:03:20.642,0:03:23.443 X 對我們有什麼作用。 0:03:28.453,0:03:30.540 for 迴圈有件會讓人困惑的事情是 0:03:30.866,0:03:32.971 就是要記住這些分號的做用。 0:03:32.972,0:03:37.165 你要記住,他們總是得要在那裡[br]分開那3部分。 0:03:37.166,0:03:38.868 如果它們不在那裡, 0:03:38.869,0:03:41.465 我們就會收到[br]跟我們 for 迴圈有關的, 0:03:41.466,0:03:42.599 一些怪怪的錯誤訊息 0:03:42.600,0:03:45.634 所以只要一看到[br]就仔細檢查它們。 0:03:45.635,0:03:48.980 你也可能會過度熱心地[br]額外添加一組在終點,[br] 0:03:48.981,0:03:53.651 但,你只要記住分號[br]只是為了要成3個部分, 0:03:53.652,0:03:56.871 而我們可以讓這最後的分號[br]不分隔任何東西, 0:03:56.872,0:04:01.164 它只跟在後面,所以我們可以[br]擺脫它,因為我們不需要它。 0:04:01.165,0:04:04.328 現在,我知道你的眼睛可能[br]盯得有點累 0:04:04.329,0:04:06.497 這些 for 迴圈被轉化為[br]while迴圈再回來, 0:04:06.705,0:04:08.636 讓我們再做一次, 0:04:08.637,0:04:10.557 你就可以真正看到for 迴圈 0:04:10.558,0:04:13.286 只是另一種跟while迴圈[br]類似地簡單編寫方式 0:04:13.287,0:04:15.766 你會很有自信地[br]理解 0:04:15.767,0:04:18.498 如何從for迴圈[br]回到while迴圈。 0:04:18.801,0:04:22.863 任何一種 for 迴圈你都可以轉換回來[br]不只是這一個。 0:04:22.864,0:04:24.854 我們要做的第一件事是想一想 0:04:24.855,0:04:28.193 在for 迴圈裡的第一個值[br]要放在哪裡 0:04:28.704,0:04:31.062 既然它的作用只是[br]初始化這個可變數, 0:04:31.063,0:04:34.056 記住,一定要寫在while迴圈之外,[br]而不是while迴圈裡面, 0:04:34.057,0:04:35.798 而且它應該寫在上面, 0:04:35.799,0:04:38.365 在運作while迴圈時[br]我們需要它能同時運作。 0:04:38.366,0:04:40.631 再來你會想接下來[br]會是什麼情況 0:04:40.632,0:04:41.831 --那很簡單-- 0:04:41.831,0:04:45.942 通常要下停止條件[br]或重複/直到條件 0:04:45.943,0:04:47.567 必須進來這裡, 0:04:47.568,0:04:51.873 我們要描述當 y [br]小於313,我們就會繼續向前 0:04:52.871,0:04:54.326 最終,這個改變。 0:04:54.326,0:04:56.567 我們總是將改變放在[br]while 迴圈之後 0:04:56.568,0:04:59.639 在迴圈中,我們已經看到了,[br]所以我們應該在這裡那麼做。 0:04:59.640,0:05:04.235 現在,我們只需要移動這段命令[br]到這裡面,好了!過來了!。 0:05:04.696,0:05:09.796 注釋掉這整個迴圈,你看[br]我們讓同樣的事又發生了。 0:05:11.556,0:05:13.177 希望到目前為止,你可以明白 0:05:13.178,0:05:15.678 這個新的 for 迴圈[br]不是真的那麼必要。 0:05:16.132,0:05:20.101 我們可以讓我們的程式設計人生[br]都像這樣寫迴圈。 0:05:20.102,0:05:23.968 但是,for 迴圈能這麼簡潔[br]有點令人印象深刻。 0:05:23.969,0:05:27.604 一旦你習慣它的運作原理[br]就會更明白些。 0:05:27.605,0:05:29.400 我們是如何開始一個可變數, 0:05:29.401,0:05:31.091 我們在說要持續多長, 0:05:31.092,0:05:33.367 然後在這裡更改這個可變數。 0:05:33.368,0:05:36.729 所以,如果你真的很討厭 for迴圈,[br]你根本不需要用它, 0:05:36.730,0:05:38.463 但你應該習慣看它們。 0:05:38.464,0:05:40.206 如果它們令人困惑,只要記得 0:05:40.206,0:05:42.960 你可以將它們轉換回[br]像這樣的while迴圈。 0:05:42.961,0:05:46.500 如果你喜歡冒險,[br]試著在新程式中使用for迴圈, 0:05:46.501,0:05:48.664 或是回到你原來簡單點的[br]while 迴圈, 0:05:48.665,0:05:52.101 然後將它們轉換成 for 迴圈,如果合適的話。 0:05:52.102,0:05:56.700 最後提醒:你不能總是將while迴圈[br]轉換成for 迴圈, 0:05:56.701,0:05:59.299 只有當它們[br]真的像這麼簡單的形式, 0:05:59.300,0:06:01.942 你可以很清楚地掌握[br]要開始的可變數, 0:06:01.943,0:06:05.532 要進行多長,[br]以及要如何改變。