1 00:00:01,459 --> 00:00:03,043 現在,你認識了 while 迴圈 2 00:00:03,014 --> 00:00:05,242 讓我們談談 另一種迴圈,for 迴圈。 3 00:00:05,811 --> 00:00:07,397 這個 for 迴圈要用來讚美 4 00:00:07,398 --> 00:00:10,534 一種最好吃的披薩 鳳梨披薩 5 00:00:10,535 --> 00:00:12,965 你可能會想:「我喜歡while 迴圈, 6 00:00:12,966 --> 00:00:15,134 為什麼還要管 其他的新迴圈?」 7 00:00:15,135 --> 00:00:17,333 好吧,很快你會發現 for 迴圈 8 00:00:17,334 --> 00:00:20,634 是一種運用較短的方式 編寫的while迴圈。 9 00:00:20,635 --> 00:00:22,693 所以,在我們檢查這個 for 迴圈之前, 10 00:00:22,694 --> 00:00:26,316 讓我們先來看while迴圈 這樣會更熟悉。 11 00:00:26,317 --> 00:00:28,532 我們一會兒就回來 for 迴圈這裡。 12 00:00:28,533 --> 00:00:31,266 所以,就像你所看過 對while迴圈的簡介, 13 00:00:31,250 --> 00:00:33,584 我們就由可變數 y 開始, 14 00:00:33,604 --> 00:00:36,728 用位置 y 編寫訊息。 15 00:00:36,729 --> 00:00:38,498 我們說我們要繼續往前 16 00:00:38,499 --> 00:00:42,767 Y的長度要少於 300, 並且每次y變動40。 17 00:00:42,768 --> 00:00:46,668 現在,只強調每一條 要重複確認的訊息, 18 00:00:46,669 --> 00:00:50,600 我們可以說:「鳳梨披薩是 最讚的。」是個重要的資訊, 19 00:00:50,601 --> 00:00:52,400 所以我們可能想要 寫更多。 20 00:00:52,401 --> 00:00:55,268 因此我們應該從高一點的位置開始 --所以我們更改--, 21 00:00:55,269 --> 00:00:58,466 它應該繼續更長, 所以我們使它變大些, 22 00:00:58,467 --> 00:01:01,636 間隔應該小一點 --你不覺得嗎?-- 23 00:01:01,637 --> 00:01:03,612 嗯,這樣好一點。 24 00:01:03,613 --> 00:01:07,505 現在,讓我們來看看如何 將while 迴圈變成 for 迴圈。 25 00:01:07,506 --> 00:01:09,567 我要將這個 while 迴圈注釋掉(/*), 26 00:01:09,568 --> 00:01:14,027 所以你可以看到 我正在照我的意思做。 27 00:01:14,028 --> 00:01:19,836 而且我們將建立一個for迴圈 並留一些空間之後填寫。 28 00:01:19,837 --> 00:01:22,539 真正重要的是 做出有別以往的 for 迴圈, 29 00:01:22,540 --> 00:01:26,377 它不只是一件事在這裡面, 它實際上是三件事。 30 00:01:26,378 --> 00:01:27,932 我們這麼對電腦下指令, 31 00:01:27,933 --> 00:01:31,201 透過運用這些分號 分隔成三部分, 32 00:01:31,536 --> 00:01:34,473 我們會有一部分在這裡, 這裡一部分,這裡一部分, 33 00:01:34,474 --> 00:01:37,331 然後,內迴圈, 就像我們之前的一樣。 34 00:01:37,332 --> 00:01:39,579 所以,每個部分裡有什麼東西? 35 00:01:39,580 --> 00:01:45,866 你可以把它當作一個起點 或初始化, 36 00:01:45,867 --> 00:01:47,966 然後我們放一個分號, 37 00:01:47,967 --> 00:01:50,994 再來,排序的指令要重複多長, 38 00:01:52,115 --> 00:01:55,967 最後我們要產生某種改變。 39 00:01:57,174 --> 00:01:59,630 因此,要與while 迴圈如何相互對應? 40 00:01:59,631 --> 00:02:01,074 我們可以說,這真的很具體, 41 00:02:01,075 --> 00:02:04,133 將可變數 y的起點 設置在這裡, 42 00:02:04,134 --> 00:02:08,880 因此,我們以複製和粘貼, 到第一部分的 for 迴圈。 43 00:02:08,881 --> 00:02:13,400 同樣,我們可以說 這中間部分在描述 44 00:02:13,401 --> 00:02:17,196 我們應該繼續維持多長時間, 那放在中間。 45 00:02:17,687 --> 00:02:24,743 我們說更改發生在終點這裡, 我們會把這個放在 for 迴圈的終點。 46 00:02:25,698 --> 00:02:29,518 這三個部分必須按照這個順序 在你的 for 迴圈出現。 47 00:02:29,519 --> 00:02:32,066 你開始時都必須如此描述 48 00:02:32,067 --> 00:02:34,294 作為可變數 應該這樣開始。 49 00:02:34,295 --> 00:02:35,574 這是27 50 00:02:35,575 --> 00:02:41,562 然後你描述繼續做多長。 重複次數少於 354。 51 00:02:41,563 --> 00:02:44,496 然後你需要把 你打算更改的東西放上去。 52 00:02:44,497 --> 00:02:47,835 所以這裡我們要更改 由增加 y 到24。 53 00:02:48,747 --> 00:02:50,944 最後,你只需要操做 54 00:02:50,945 --> 00:02:52,866 不管你想要 裡面的 for 迴圈做什麼。 55 00:02:52,867 --> 00:02:54,671 所以我們繼續 將文字寫在那裡。 56 00:02:54,671 --> 00:02:57,337 然後,有了! 鳳梨披薩是最讚的。 57 00:02:57,338 --> 00:02:59,234 每個人都會知道。 58 00:02:59,235 --> 00:03:03,397 現在,讓我們更貼近地思考 這個 for 迴圈發生了什麼? 59 00:03:03,398 --> 00:03:07,767 如果我們想要更改它的起點, 好吧,我們只需從這裡開始更改。 60 00:03:07,768 --> 00:03:11,166 如果我們想要更改它的終點, 我們只需更改該終點。 61 00:03:11,167 --> 00:03:16,034 如果我們想要更改間距, 我們只需更改增量值。 62 00:03:17,367 --> 00:03:20,641 我們還可以更改 --像 while 迴圈那樣-- 63 00:03:20,642 --> 00:03:23,443 X 對我們有什麼作用。 64 00:03:28,453 --> 00:03:30,540 for 迴圈有件會讓人困惑的事情是 65 00:03:30,866 --> 00:03:32,971 就是要記住這些分號的做用。 66 00:03:32,972 --> 00:03:37,165 你要記住,他們總是得要在那裡 分開那3部分。 67 00:03:37,166 --> 00:03:38,868 如果它們不在那裡, 68 00:03:38,869 --> 00:03:41,465 我們就會收到 跟我們 for 迴圈有關的, 69 00:03:41,466 --> 00:03:42,599 一些怪怪的錯誤訊息 70 00:03:42,600 --> 00:03:45,634 所以只要一看到 就仔細檢查它們。 71 00:03:45,635 --> 00:03:48,980 你也可能會過度熱心地 額外添加一組在終點, 72 00:03:48,981 --> 00:03:53,651 但,你只要記住分號 只是為了要成3個部分, 73 00:03:53,652 --> 00:03:56,871 而我們可以讓這最後的分號 不分隔任何東西, 74 00:03:56,872 --> 00:04:01,164 它只跟在後面,所以我們可以 擺脫它,因為我們不需要它。 75 00:04:01,165 --> 00:04:04,328 現在,我知道你的眼睛可能 盯得有點累 76 00:04:04,329 --> 00:04:06,497 這些 for 迴圈被轉化為 while迴圈再回來, 77 00:04:06,705 --> 00:04:08,636 讓我們再做一次, 78 00:04:08,637 --> 00:04:10,557 你就可以真正看到for 迴圈 79 00:04:10,558 --> 00:04:13,286 只是另一種跟while迴圈 類似地簡單編寫方式 80 00:04:13,287 --> 00:04:15,766 你會很有自信地 理解 81 00:04:15,767 --> 00:04:18,498 如何從for迴圈 回到while迴圈。 82 00:04:18,801 --> 00:04:22,863 任何一種 for 迴圈你都可以轉換回來 不只是這一個。 83 00:04:22,864 --> 00:04:24,854 我們要做的第一件事是想一想 84 00:04:24,855 --> 00:04:28,193 在for 迴圈裡的第一個值 要放在哪裡 85 00:04:28,704 --> 00:04:31,062 既然它的作用只是 初始化這個可變數, 86 00:04:31,063 --> 00:04:34,056 記住,一定要寫在while迴圈之外, 而不是while迴圈裡面, 87 00:04:34,057 --> 00:04:35,798 而且它應該寫在上面, 88 00:04:35,799 --> 00:04:38,365 在運作while迴圈時 我們需要它能同時運作。 89 00:04:38,366 --> 00:04:40,631 再來你會想接下來 會是什麼情況 90 00:04:40,632 --> 00:04:41,831 --那很簡單-- 91 00:04:41,831 --> 00:04:45,942 通常要下停止條件 或重複/直到條件 92 00:04:45,943 --> 00:04:47,567 必須進來這裡, 93 00:04:47,568 --> 00:04:51,873 我們要描述當 y 小於313,我們就會繼續向前 94 00:04:52,871 --> 00:04:54,326 最終,這個改變。 95 00:04:54,326 --> 00:04:56,567 我們總是將改變放在 while 迴圈之後 96 00:04:56,568 --> 00:04:59,639 在迴圈中,我們已經看到了, 所以我們應該在這裡那麼做。 97 00:04:59,640 --> 00:05:04,235 現在,我們只需要移動這段命令 到這裡面,好了!過來了!。 98 00:05:04,696 --> 00:05:09,796 注釋掉這整個迴圈,你看 我們讓同樣的事又發生了。 99 00:05:11,556 --> 00:05:13,177 希望到目前為止,你可以明白 100 00:05:13,178 --> 00:05:15,678 這個新的 for 迴圈 不是真的那麼必要。 101 00:05:16,132 --> 00:05:20,101 我們可以讓我們的程式設計人生 都像這樣寫迴圈。 102 00:05:20,102 --> 00:05:23,968 但是,for 迴圈能這麼簡潔 有點令人印象深刻。 103 00:05:23,969 --> 00:05:27,604 一旦你習慣它的運作原理 就會更明白些。 104 00:05:27,605 --> 00:05:29,400 我們是如何開始一個可變數, 105 00:05:29,401 --> 00:05:31,091 我們在說要持續多長, 106 00:05:31,092 --> 00:05:33,367 然後在這裡更改這個可變數。 107 00:05:33,368 --> 00:05:36,729 所以,如果你真的很討厭 for迴圈, 你根本不需要用它, 108 00:05:36,730 --> 00:05:38,463 但你應該習慣看它們。 109 00:05:38,464 --> 00:05:40,206 如果它們令人困惑,只要記得 110 00:05:40,206 --> 00:05:42,960 你可以將它們轉換回 像這樣的while迴圈。 111 00:05:42,961 --> 00:05:46,500 如果你喜歡冒險, 試著在新程式中使用for迴圈, 112 00:05:46,501 --> 00:05:48,664 或是回到你原來簡單點的 while 迴圈, 113 00:05:48,665 --> 00:05:52,101 然後將它們轉換成 for 迴圈,如果合適的話。 114 00:05:52,102 --> 00:05:56,700 最後提醒:你不能總是將while迴圈 轉換成for 迴圈, 115 00:05:56,701 --> 00:05:59,299 只有當它們 真的像這麼簡單的形式, 116 00:05:59,300 --> 00:06:01,942 你可以很清楚地掌握 要開始的可變數, 117 00:06:01,943 --> 00:06:05,532 要進行多長, 以及要如何改變。