実みつるのPreプログラミング

プログラミングの学習を考えている方へ

4-4 回数に気をつける

第四章 繰り返し

(4)回数に気をつける

この章の最後は、繰り返す回数について考えてみます。これまで例に挙げてきた陸上競技では、トラックを周る回数が正確でなくてはなりません。1周多く、或いは1周少なく周ることは当然認められません。コンピューターの場合も同様で、繰り返しの回数を間違えてしまうと、思った通りの結果を得られない可能性が有ります。よって回数をきちんと管理する事は重要です。

 

コンピューターで管理する場合、コンピューターが保持するカウンターと表示器の数字を比較する方法を間違えない様にする事がポイントになります。具体的には、以下2点が重要になります。

 

①カウンターの初期値

②繰り返しを止める条件設定

 

例えば前項では、カウンターの値が10だった場合に繰り返しを止める、つまりゴールとしましたが、仮に初めに設定する値を0ではなく1にした場合はどうでしょうか。

 

1周走り終えた時、カウンターの値は2となります。つまりカウンターの値は「周回した数+1」という事になります。これに従えば、9周走り終えた段階でカウンターの値は10となります。すると、次の分岐で「COUNTER = 10」という条件を満たしてしまいますので、ゴールという事になります。しかし実際には9周しかしていませんので、本来の目的を達成できなくなってしまいます。

 

では、分岐の条件を「COUNTER > 10」としてみたらどうでしょうか。「カウンターの値が10よりも大きかったら」という意味です。この場合、仮にカウンターの値が10であったとしても条件を満たしません。「10より大きい」とは10ではダメだからです。次の1周を終え、カウンターの値が11になったら条件を満たしゴールします。このケースでは10周するので、目的を達成できます。

 

この様に、カウンターの初期値と繰り返しを止める条件の組み合わせが適正でないと、コンピューターは思う通りに動きません。以下にいくつか組み合わせを例示してみますので、きちんと10周する(すなわち10回繰り返す)のはどれか、考えてみて下さい。

 

A) COUNTER初期値: 0|条件: COUNTER = 10

B) COUNTER初期値: 1|条件: COUNTER > 10

C) COUNTER初期値: 0|条件: COUNTER > 9

D) COUNTER初期値: 1|条件: COUNTER >= 11

E) COUNTER初期値: 0|条件: COUNTER >= 10

 

答えは、全て10周して終わります。慎重に確認してみて下さい。

 

繰り返しの章はここで終了と致します。次回は「関数」について考えていきたいと思います。