<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh-Hant-TW">
	<id>https://wiki.taigi.ima.org.tw/w/index.php?action=history&amp;feed=atom&amp;title=For%E8%BF%B4%E7%AE%8D</id>
	<title>For迴箍 - 修訂紀錄</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.taigi.ima.org.tw/w/index.php?action=history&amp;feed=atom&amp;title=For%E8%BF%B4%E7%AE%8D"/>
	<link rel="alternate" type="text/html" href="https://wiki.taigi.ima.org.tw/w/index.php?title=For%E8%BF%B4%E7%AE%8D&amp;action=history"/>
	<updated>2026-04-03T20:08:08Z</updated>
	<subtitle>本 wiki 上此頁面的修訂紀錄</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>https://wiki.taigi.ima.org.tw/w/index.php?title=For%E8%BF%B4%E7%AE%8D&amp;diff=357371&amp;oldid=prev</id>
		<title>TaiwanTonguesApiRobot：​從 JSON 檔案批量匯入</title>
		<link rel="alternate" type="text/html" href="https://wiki.taigi.ima.org.tw/w/index.php?title=For%E8%BF%B4%E7%AE%8D&amp;diff=357371&amp;oldid=prev"/>
		<updated>2025-08-22T02:57:36Z</updated>

		<summary type="html">&lt;p&gt;從 JSON 檔案批量匯入&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新頁面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;for 迴箍&amp;#039;&amp;#039;&amp;#039;（英語：for loop）佇電腦科學是一種程式迵天，會當予程式碼重複的執行。&lt;br /&gt;
&lt;br /&gt;
伊佮其他的迴箍仔，如 while 迴箍，上大的無仝，是伊擁有一个迴圈計數器，抑是迴箍變數。這會使 for 迵天會當知影迵天代過程當中的執行順序。&lt;br /&gt;
&lt;br /&gt;
==for 迴箍的種類==&lt;br /&gt;
&lt;br /&gt;
===傳統的 for 迴箍 for-loops===&lt;br /&gt;
&lt;br /&gt;
C 語言內底傳統的 for-loop 包含三个部份：初初化、條件、遞增，這三个部分攏是有可無。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
: 以 Java 做例：&lt;br /&gt;
&lt;br /&gt;
初初化是宣告（或者是有價值）任何需要的變數的動作。你若欲使用多個變數，則變數的種類愛一致。條件的部份若檢查是毋是離開這个迴圈，也就是講予程式碼落去執行。若條件判斷做假，愛離開回轉。遞增佇咧每走一擺迴圈攏會重複執行一擺。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
: 佇遮以 Java 做例：&lt;br /&gt;
&lt;br /&gt;
===使用指標的 for 迴箍===&lt;br /&gt;
&lt;br /&gt;
彼个形式的 for 迴箍是大部份其他 for 迴圈的變革：伊允准除了數字以外的計數方式。伊通常用隱含抑是外顯指標的方式呈現，佇遮回輾變數會順序表示。以下是一个代表性的例 ( 語言：Python )：&lt;br /&gt;
&lt;br /&gt;
===矩陣化 for 迴箍===&lt;br /&gt;
&lt;br /&gt;
有一寡語言支援較特別的 for 迴箍，親像伊會當同時處理所有的指標 in parallel，親像佇咧 FORTRAN 九十五中的 ` for all ` 語法。&lt;br /&gt;
比如講伊，佇咧以下的 for 迴箍虛擬碼片段，做計算 ` A ( i ) ` 的新的值，除了第一个 ( 也就是講 ` i=二 ` )，` A ( i-一 ) ` 的參照會得著新的值。&lt;br /&gt;
毋過，佇咧 ` for all ` 版本，逐个計算攏會當用一開始的值，袂去共人改 ` A ` .&lt;br /&gt;
&lt;br /&gt;
` ` `&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;for&amp;#039;&amp;#039;&amp;#039;i  :=二   : N-一&amp;#039;&amp;#039;&amp;#039;do&amp;#039;&amp;#039;&amp;#039;A ( i )   :=[A ( i-一 ) + A ( i ) + A ( i + 一 )] / 三 ;&amp;#039;&amp;#039;&amp;#039;next&amp;#039;&amp;#039;&amp;#039;i ;&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;for all&amp;#039;&amp;#039;&amp;#039;i  :=二   : N-一&amp;#039;&amp;#039;&amp;#039;do&amp;#039;&amp;#039;&amp;#039;A ( i )   :=[A ( i-一 ) + A ( i ) + A ( i + 一 )] / 三 ;&lt;br /&gt;
` ` `&lt;br /&gt;
&lt;br /&gt;
佮一般的 for 轉和可能差較大。&lt;br /&gt;
&lt;br /&gt;
==應用範例==&lt;br /&gt;
&lt;br /&gt;
以 c 語言做例：&lt;br /&gt;
&lt;br /&gt;
===做為不窮迴圈===&lt;br /&gt;
&lt;br /&gt;
這个程式碼會不斷印出 &amp;quot; just keep going on ! &amp;quot;。&lt;br /&gt;
&lt;br /&gt;
===配合矩陣===&lt;br /&gt;
&lt;br /&gt;
矩陣值：&lt;br /&gt;
&lt;br /&gt;
以上予矩陣 matrix 照頭對無到 bound \ _ of \ _ matrix 鋪一的值。&lt;br /&gt;
&lt;br /&gt;
===岫狀迴圈===&lt;br /&gt;
&lt;br /&gt;
親像岫窟仝款，一重包括一重，所以以下這个程式碼總共會執行 ( bound \ _ of \ _ x ) 乘上 ( bound \ _ of \ _ y ) 次。&lt;br /&gt;
&lt;br /&gt;
==捷看會著的錯誤==&lt;br /&gt;
&lt;br /&gt;
===無窮圓箍仔===&lt;br /&gt;
&lt;br /&gt;
遮是講無意產生的無窮圓箍仔，致使這機會致使。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
: 以 C 語言做例：&lt;br /&gt;
&lt;br /&gt;
===超出界限===&lt;br /&gt;
&lt;br /&gt;
編譯器會顯示講 out of bound，通常是指試試取矩陣界限外的值。&lt;br /&gt;
&lt;br /&gt;
===迴箍仔內的變數===&lt;br /&gt;
&lt;br /&gt;
迴箍仔內底的變數佇咧出迴箍仔了後，便無法度使用。&lt;br /&gt;
&lt;br /&gt;
==發展概論==&lt;br /&gt;
&lt;br /&gt;
主要因緣起做真濟愛重複執行的程式碼，而無仝款的程式語言嘛會有無仝款的語法型式。&lt;br /&gt;
&lt;br /&gt;
===一千九百五十七 : FORTRAN===&lt;br /&gt;
&lt;br /&gt;
佇咧 Fortran 的 ` DO ` 迴圈仝等於 for 迴箍。&lt;br /&gt;
Fortran 的 ` DO ` 迴圈語法為：&lt;br /&gt;
&lt;br /&gt;
紲落來的兩个例做出來的結果等於其他的語言的三个參數的 for 迴箍。其中變數 COUNTER 予人初初化做一，以一遞增，並且到五的時陣停落來。&lt;br /&gt;
&lt;br /&gt;
Fortran 七十七抑是的版本，嘛有可能寫做：&lt;br /&gt;
&lt;br /&gt;
若是遞增為一，則遞增的部份會當省略。比如講：&lt;br /&gt;
&lt;br /&gt;
===一千九百五十八 : Algol===&lt;br /&gt;
&lt;br /&gt;
Algol 佇咧 Algo 一百五十八頭擺正式格式化。&lt;br /&gt;
&lt;br /&gt;
===一千九百六十 : COBOL===&lt;br /&gt;
&lt;br /&gt;
COBOL 佇真濟拍拚之下，佇一九五九年尾正式的格式化。伊使用 PERFORM 動詞，而且 PERFORM 動詞有真濟功能，像講後來加的＂結構化＂的語法，像講 END-PERFORM。忽略宣告佮初初化變數的必要，類似 for 迴圈的語法為：&lt;br /&gt;
&lt;br /&gt;
若是 PERFORM 有 TEST AFTER，這个迴圈的執行的結果會小可無仝：迴圈內底的程式會予人執行至少一改。&lt;br /&gt;
&lt;br /&gt;
===一千九百六十四 : BASIC===&lt;br /&gt;
&lt;br /&gt;
BASIC 著的迴圈仔有時講 for-next 迴箍。&lt;br /&gt;
&lt;br /&gt;
===一千九百六十四 : PL / I===&lt;br /&gt;
&lt;br /&gt;
由 IBM 公司佇一九五空年代發明的第三代高級程式語言，有的類似 PASCAL 語言。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
: 以下為 PLI 使用例：&lt;br /&gt;
&lt;br /&gt;
_ LEAVE _ 指令會使共用來結束迴圈，像 c 語言的 break，而且 _ ITERATE _ 著親像 continue。&lt;br /&gt;
&lt;br /&gt;
===一千九百六十八 : Algol 六十八===&lt;br /&gt;
&lt;br /&gt;
Algol 六十八敢若這馬的 for 語言矣：&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===一千九百七十 : Pascal===&lt;br /&gt;
&lt;br /&gt;
===一千九百七十二 : C / C + +===&lt;br /&gt;
&lt;br /&gt;
===一千九百七十二 : Smalltalk===&lt;br /&gt;
&lt;br /&gt;
===一千九百八十 : Ada===&lt;br /&gt;
&lt;br /&gt;
===一千九百八十 : Maple===&lt;br /&gt;
&lt;br /&gt;
Maple 有兩種型式的 for 迴箍，一个是指標一定範圍的值，另外一个是指標一定大細的容器。&lt;br /&gt;
頭一項：&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
` ` `&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;for&amp;#039;&amp;#039;&amp;#039;_ i _&amp;#039;&amp;#039;&amp;#039;from&amp;#039;&amp;#039;&amp;#039;_ f _&amp;#039;&amp;#039;&amp;#039;by&amp;#039;&amp;#039;&amp;#039;_ b _&amp;#039;&amp;#039;&amp;#039;to&amp;#039;&amp;#039;&amp;#039;_ t _&amp;#039;&amp;#039;&amp;#039;while&amp;#039;&amp;#039;&amp;#039;_ w _&amp;#039;&amp;#039;&amp;#039;do&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
_ # loop body _&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;od&amp;#039;&amp;#039;&amp;#039;;&lt;br /&gt;
` ` `&lt;br /&gt;
&lt;br /&gt;
第二項：&lt;br /&gt;
&lt;br /&gt;
` ` `&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;for&amp;#039;&amp;#039;&amp;#039;_ e _&amp;#039;&amp;#039;&amp;#039;in&amp;#039;&amp;#039;&amp;#039;_ c _&amp;#039;&amp;#039;&amp;#039;while&amp;#039;&amp;#039;&amp;#039;_ w _&amp;#039;&amp;#039;&amp;#039;do&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
_ # loop body _&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;od&amp;#039;&amp;#039;&amp;#039;;&lt;br /&gt;
` ` `&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===一千九百八十二 : PostScript===&lt;br /&gt;
&lt;br /&gt;
伊的 for 迴箍 ` [initial] [increment] [limit] { . . . } for ` 初初化一个內部的變數，並且執行到伊無大於限制的值 ( 若是遞增為負則這類推 )。&lt;br /&gt;
&lt;br /&gt;
===一千九百八十三 : Ada 八十三 and above===&lt;br /&gt;
&lt;br /&gt;
===一千九百八十四 : MATLAB===&lt;br /&gt;
&lt;br /&gt;
===一千九百八十七 : Perl===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===一千九百八十八 : Mathematica===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===一千九百八十九 : Bash===&lt;br /&gt;
&lt;br /&gt;
===一千九百九十 : Haskell===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
如果你若想欲用閣較正式的方式存在 [一 . . 五] 的內容，一个較官方的方式為：&lt;br /&gt;
&lt;br /&gt;
並且會使按呢用：&lt;br /&gt;
&lt;br /&gt;
===一千九百九十一 : Oberon 鋪二 , Oberon 鋪七 , or Component Pascal===&lt;br /&gt;
&lt;br /&gt;
===一千九百九十一 : Python===&lt;br /&gt;
&lt;br /&gt;
===一千九百九十三 : AppleScript===&lt;br /&gt;
&lt;br /&gt;
===一千九百九十三 : Lua===&lt;br /&gt;
&lt;br /&gt;
這个程式碼就會印出：&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===一千九百九十五 : Java===&lt;br /&gt;
&lt;br /&gt;
===一千九百九十五 : JavaScript===&lt;br /&gt;
&lt;br /&gt;
JavaScript 支援親像 C 語言的三个參數的迴箍，並且支援 break 和 continue。&lt;br /&gt;
&lt;br /&gt;
===一千九百九十五 : PHP===&lt;br /&gt;
&lt;br /&gt;
===一千九百九十五 : Ruby===&lt;br /&gt;
&lt;br /&gt;
===九百九十六 : OCaml===&lt;br /&gt;
&lt;br /&gt;
請參考&lt;br /&gt;
&lt;br /&gt;
===一千九百九十八 : ActionScript 三===&lt;br /&gt;
&lt;br /&gt;
==參考文獻==&lt;br /&gt;
&lt;br /&gt;
https : / / web . archive . org / web / 二十五空一千八百空九九分空六百一十二刣四千五百四十三 / http : / / terms . naer . edu . tw / detail / 兩百三十三石七千五百二十 /&lt;br /&gt;
&lt;br /&gt;
==參見==&lt;br /&gt;
&lt;br /&gt;
* Foreach 迴箍&lt;br /&gt;
&lt;br /&gt;
[[分類: 待校正]]&lt;/div&gt;</summary>
		<author><name>TaiwanTonguesApiRobot</name></author>
	</entry>
</feed>