まず、「ID番号は?」という文章を表示させて、入力待ち状態にしなさい。
次に、任意の数値をキーボードから入力し、入力された数値は、変数S(数値)に代入すること。変数S(数値)に代入された数値をあらかじめ決めておいた数値と比較して、その結果により動作を繰り返すようなアルゴリズムを組むこと。
このとき、数値が一致しなかった場合は「もう一度確認して、ID番号を入力してください。」という文章を表示させて、さらに入力待ち状態にしなさい。
その後も同様に、数値が一致しなかった場合は上記の作業を繰り返すアルゴリズムを組むこと。
一致した場合には、「こんにちわ!国際太郎さん!」と表示後、行末で改行してプログラムを終了すること。
この単元でのポイントは、繰返し。
繰返すアルゴリズムとは、ある条件が満たされている間、ある動作を繰返しているような構造のことで、「繰返し構造」、「反復処理」と呼ばれます。
JPADetに用意されている繰返し構造には、「前判定繰返し」、「後判定繰返し」、「条件判定繰返し」とがあるが、ここでは「前判定繰返し」と呼ばれる構造を使います。
「前判定繰返し」は、ある条件が満たされていない場合は、満たされている時に予定されている動作は一切実行されないのが特徴です。
作成するシートは図4-1のような形になるのですが、これも順を追って説明していきましょう。
図4-1
まずはここで「ID番号は?」と聞いて入力待ち状態にしてありますね。
次が問題の前判定繰返しです。
分岐シンボルについては、「命令の追加」メニューから「前判定繰返し(W)」を選択するか、アイコンをクリックします。
前判定繰返しを選択すると、まず「式ダイアログ」が表示されます。
ここには判定条件を入力するわけですが、ここではキーボードから入力された数値が「2002」であるかどうかを判断させたいので、式は「S<>2002」と入力します。
「S<>2002」という式は、「Sに代入された数値と2002という数値は等しくない」という意味です。
ここで記述した条件が満たされている間、つまりこの式が「真」である場合には、この前判定繰返しシンボルの右側に配置したシンボルを繰り返し実行します。
一方、条件が満たされないとき(今回の場合では、Sが2002だった場合)、つまり「偽」であるときには、次の処理に進むことになる。
そのため、一度で条件を満たさなかった場合はこの前判定繰返しシンボルの右側に配置したシンボルは一度も実行されません。
では実行してみましょう。
2002以外の数値を入力してみます。
S<>2002という条件を満たしているので、「もう一度IDを入力してください。」という処理が繰返されていますね。
そして正しい数値を入力した場合は繰返しから抜けて次の処理へ移っています。
いきなり正しいID番号を入力した場合の実行結果がこちらです。
繰返しシンボルの右側に配置されたシンボルは実行されずに告ぎの処理に移っていることがわかると思います。