<< 7.繰り返し >>

   

1.反復・繰り返しとは何だろう?


 結構このHPも先のほうに進んできました。それだけFortranの学習も進んでいるということで、最初から読み続けてくれている皆さんに、感謝の意を表したいと思います。自分も最初はFortranなんてわけ分かりませんでした。最初に渡されたテキストはなかなか理解できず(内容が古いのも合って)、いろいろな本を探して、読んで理解していきました。Fortranの本はやっぱり少ないですね。自分の大学は経済学の大学で、統計学を扱っていることや情報処理の科目があることにより、Fortranの本が10冊か20冊かあるので何とかなっていますが、そんな図書館はそう多くないと思います。書店に行ってFortranの本があることはまずないでしょう。そんなのがある本屋は相当プログラム関連が好きか数値計算に力を入れているかでしょう。また図書館にあるといっても、新しいバージョン(Fortran90以上)の本は一冊しか在りません。ほとんどFortran77です。いまだに紙送り制御が残ってます。理系の大学ならまともな本がそろった図書館があるのでしょうか。そんなFortran学習者(特に学習環境が悪く、プログラミングが苦手な文系)のために、このHPを作りました。難しいことは言いません。簡単な事しかしません(ビットだの2進数だのハ僕もギブアップです)。残りの章の学習をがんばってください。

 少し話が脱線してしまいましたが、これから「繰り返し」について学習していきたいと思います。既に何度か顔を出したことがあるので、もう分かってしまった方もいらっしゃるかもしれませんが、ここであらためて説明させていただきます。
 繰り返し処理というのは、文字通り処理を繰り返すための手続きです。この処理を使うと、指定した同じ命令を規定回数まで繰り返し実行し続けます。なぜこの処理が必要なのでしょうか。それは、同じことを何度も書くのは面倒だからです。場合によっては、この方法をとらないと処理ができないことがあるからです。
 現実にも、繰り返し処理をしている場面は多く見られます。例えば文書のコピーがそれに挙げられるでしょう。文書を100部刷るときには、コピーの濃さや色などを決めた後、部数を100に設定してから、コピーのスタートボタンを押すのが普通だと思います。わざわざ設定→一枚コピー→設定→一枚コピー→設定...なんて、面倒なことはしませんよね。なぜしないかというと、100枚コピーをするといっても、その設定が100枚とも同じなのであれば、その都度指定して一枚ずつコピーをするなんて面倒なことをするよりも、これ以降のコピーに対し全て適用する設定をし、その適用対象を100枚にしてコピーをしたほうが、簡単にコピーが済むからですよね。面倒なだけでなく、時間の無駄です。プログラムでも、同じことが言えるのです。
 プログラムの例としては、合計を求める場合です。10人の子供がいて、彼らが今所持している現金の合計額は果たしていくらになるのか、ということを求めるときには繰り返し処理を用います。この場合、別に繰り返し処理を用いなくても、

integer a,b,c,d,e,f,g,h,i,j,sum
read *,a,b,c,d,e,f,g,h,i,j
sum=a+b+c+d+e+f+g+h+i+j
print *,sum
stop
end

というように書くことで、合計額を求めることはできます(分かっているとは思いますが、a〜jが書く子供たちの財布の金額です)。しかし、子供が20人いたらどうでしょう。30人いたら? もし100人いたら? 人数分sumの行に変数を並べるのでは、もう大変です。変数が何十個、何百個と並び、見た目が非常に悪くなりますし、書くのが大変です。
 繰り返し処理を使えば、特にsumの行において上のプログラムをもっと短縮することができ、見た目も向上し、プログラムの内容がわかりやすくなります。とにかく繰り返し処理というのは有為なものですから、ぜひ会得してもらいたいと思います。この処理方法を知ると、分岐処理を覚えたときのように、プログラムの幅が非常に広くなります。






前のページへ

表紙へ戻る

次のページへ