┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ ┃.&&&& **** %%%%. JavaScript&Javaで目指そう!基本情報技術者試験 ┃ ┃&&&&&&******%%%%%% 執筆&編集 斎藤末広 suehiro@he.mirai.ne.jp ┃ ┃'&┃&''*┃*''%┃%' 発行 江口昌宏 *** ┃ ┗━┻━━┻━━┻━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ 広告募集:http://www2.odn.ne.jp/~egu33/jmaga/java-maga.html ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ 第5号 2001/09/xx 反復(ループ)文 ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ プログラムを作成する上での注意事項: Windows とIE を前提としています。 拡張子を表示するに設定してください。 ------------------------------------------------------------------------ プログラムって 運動会の出し物の順番表もプログラムといいます。コンピュータで動作するプ ログラムも原意は,この出し物の順番一覧表です。 運動会は,順番に出し物が実施されます。しかし,コンピュータのプログラム は,あるときは,順を飛ばしたり,繰り返したりします。実行の順序のパターン は,3種類があります。 ------------------------------------------------------------------------ プログラムは実行順序は3つのパターン(基本制御構造) コンピュータのプログラムの実行順序は,3つのパターンがあり,連続,選択, 反復と呼ばれています。 本来プログラムの実行順序は,好き勝手にできますが,この3つのパターンを で流れを制御していくように枠にはめています。好きなところに処理を移す命令 に goto というものがあります。この goto を使用するとプログラムが分かりく なるということで,この制御構造(連続,選択,反復)の研究がされました。こ の研究を元に生まれたものが,構造化定理です。 ------------------------------------------------------------------------ 基本制御構造の発展 この基本構造のうち,連続を表す,java プログラムの命令はありません。選 択は,if 文,case 文があります。反復は,while 文,do-while 文,for 文が あります。 この号では,反復(ループ)を解説します。 ------------------------------------------------------------------------ 課題 1 + 2 + 3 + ,,, + 10 を計算する ------------------------------------------------------------------------ 力業プログラム まず,単純にプログラムを作成すると 例 j05-01.htm
もし,10 までの合計でしたこのプログラムでなんとかなりますが,これで 1000 までの合計になると,いちいち,+ 998 + 999 + 1000 とかまでやると大変 です。 反復(ループ)を利用して書き直しをしてましょう。 ------------------------------------------------------------------------ while 文の利用 while 文を利用して書き直しをします。 例 j05-02.htmの部分 while ( i <= 10) という命令文は,whileの位置で,続く{ }を反復実行を するかを判断します。 while 文は,ループに入る前に判断をしますので,前判断反復とも言われます。 ------------------------------------------------------------------------ do-while文の利用 do-while文を利用して書き直しをしてみます。 例 j05-03.htmの部分 do のところにある { から } までが反復対象で,それを一度実行すると,while のところで,反復を再度実行するかの判断をします。これは,先にループ部分を実 行してから,後で再度ループするかを判断しますので,後判断反復と呼ばれてい ます。 後判断反復は,分かりにくくなる場合が多いので,利用はあまりお勧めしませ ん。数式の定義をプログラムするときに向く場合があります。 ------------------------------------------------------------------------ for 文を利用 for 文を利用して書き直しをしてみます。 例 j05-04.htm の部分 for 文は,反復に必要な情報が一行で収まっています。このように,繰り返しの 回数がはっきりしているものには大変向いた制御文です。 Javaの場合だと int s = 0; for(int i = 1; i <= 10; i++){ s = s + i; } と書きます。for の中で,int i = 1 とするのがミソです。 ------------------------------------------------------------------------ とっておきの反復 JavaやJavaScriptでは,とっておきの反復の仕方があります。それは,まず, 無限ループを強制的に実行して,ある条件でそのループから飛び出すというやり 方です。 例 j05-05.htm の部分 for(;;) で,無限ループを指示しています。breakで,このループを強制終了し ています。 ------------------------------------------------------------------------ 反復(ループ)の使い分け 反復(ループ)をプログラムするときの,優先順位は,高い順にこんな感じで しょうか。 for 反復回数が明確なもの while 前判断に持ち込めるもの 無限ループ ロジックが複雑なもの do-while 決まると鮮やかなもの ------------------------------------------------------------------------ 次号の予定 判断文 感想は,斎藤まで,suehiro@he.mirai.ne.jp 広告等のお問い合わせ:*** ------------------------------------------------------------------------ 著作権について このメールマガジンで公開しているプログラムソースは,著作権を当方スタッ フが所有しますが,商用を含めて,再利用,改変,発表を制限しません。 本文に関しては,斎藤末広が著作権を所有します。再利用に関しては,承諾を 必要とします。 広告募集 http://www2.odn.ne.jp/~egu33/jmaga/java-maga.html