プログラムの中で反復指定は一種特異な役割をもっています.何しろ,ほんの数行書くだけで,何千回,何百万回といった反復実行ができてしまうのですから.反復実行は,コンピュータの高速性を有効に活用するためには必須の機能なのです.
forを使った繰返し(反復)実行は,「定数回反復」です.この繰返し方法では,繰返しが始まる時点で,繰り返す回数が決まっています.十回であろうが一万回であろうが同じです.このためforの反復は,「比較的安心して使える」という特長があるのです.もっとも,条件判定部や値の変更部で変な書き方をすればこの限りではありません.ですのでfor形式では,定数回反復を素直に見せるのが作法です.
ところが問題によっては,繰返し回数が前もってはわからずに,状況に応じて必要なだけ反復することが必要である場合もあります.例として,「倍々ゲームの結果を表にする」をやってみます.
class Doubling { public static void main(String argv[ ]) { int x=1, p; for(p=0; p<=20; p=p+1) { System.out.println(p + " : " + x); x=x*2; } } }
結果は自明ですね.大まかには
0:1 1:2 2:4 3:8 4:16 … … 19:524288 20:1048576
となります. この場合には,繰り返し回数が前もって分かっていますからforを使うことがきます.
26.1.3 鳴くまで繰返し | 26.1.3.1 繰返しの威力 | 26.1.3.2 監視つき繰返し | ||
2009年度版に向けて現在作業中です.
このページに関してお気づきの点がありましたら
コメント投稿システムまでお願いします.
|
Mon, 26 Apr 2004 03:31:42 JST (1922d) |