Basic Pascal Tutorial/Chapter 3/FOR..DO/ja
English · Français · Български · 中文(中国) · 日本語
FOR...DO Loops (著者: Tao Yue, 状態: 原文のまま修正なし)
FOR...DO は Pascal におけるループを構成するためのものである。もちろん、まず "ループとは何か?"という疑問が湧くだろう。
Loops
ループするとは文や複合文が、ある条件が満たされるまで繰り返し繰り返し実行されることを意味する。
3つのタイプのループがある。
- 固定反復(fixed repetition) - 固定された回数のみ反復する
- プリテスト(pretest) - ブール式をテストし、TRUE ならループに入る
- ポストテスト(posttest) - ループを実行し、それからブール式をテストする
FOR...DO Loop
Pascal においては固定反復が for ループである。一般的な形式は次の通りである。
for index := ?????????Low to ?????????High do
????????????;インデックス変数は 順序型 データでなくてはならない。このインデックスはループ本体の中で計算に用いられるが、その値は変えることはできない。たとえば、 count:=5 とするとプログラムに例外を引き起こす。
Pascal では、 for ループは1の増加のみがカウントできる。 ループは break 文で中断できる。 インデックスを利用した例を次に示す。
sum := 0;
for count := 1 to 100 do
begin
sum := sum + count;
if sum = 38 then break;
end;コンピュータは、終了になるまで延々合計を求め続ける。しかし、それは数学者ガウスが簡単な近道で合計を求めたやり方よりもはるかに速い (1+100 = 101. 2+99 = 101。パターンがわかっただろうか? 100の数字があるので、そのパターンが50回繰り返される 101*50 = 5050。これは高等数学ではないし、ガウスに由来するというのもたぶん作り話だろう)。
for-to-do ループでは、初期値は終了値よりも小さくなくてはならない。さもないとループ自体が実行されない。もし、カウントダウンしたいのなら、 for-downto-do ループを使うべきである。
for index := ?????????High downto ?????????Low do
?????????;See also
| previous | contents | next |
From the Free Pascal wiki, page "Basic Pascal Tutorial/Chapter 3/FOR..DO/ja", as it stood on 2022-08-20 after a change by Kai Burghardt, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.