ここで、ユーザーのエラーに応じて、ユーザーが犯した間違いの種類に応じて異なるメッセージを表示する必要があると考えてみましょう。
この場合、エラーごとに独自のプロシージャを作成できます。
<プレ>
プロシージャ printErrorZero();
始める
writeln('エラー。ゼロ除算!');
終わり;
プレ>
<プレ>
プロシージャ printErrorInput();
始める
writeln('入力エラー!');
終わり;
プレ>
さらに多くのエラーの可能性がある場合はどうなるでしょうか?この解決策は私たちには合いません。
どのようなエラーメッセージを表示するかを指示してプロシージャを制御する方法を学ぶ必要があります。
これを行うには、プロシージャ名の後に括弧内に記述するパラメータが必要です。
<プレ>
procedure printError(s: string);
始める
writeln;
終了;
このプロシージャでは、 s はパラメータ、つまりプロシージャの制御を可能にする特別な変数です。
パラメータは、サブルーチンの動作方法を決定する変数です。パラメータ名は、サブプログラムのヘッダーにセミコロンで区切ってリストされています。パラメータの後には、コロン の後にそのタイプが続きます。
ここで、プロシージャを呼び出すときに、プロシージャ内のパラメータ (変数) に割り当てられる実際の値を括弧内に示す必要があります。
<プレ>
printError('エラー!ゼロ除算!');
プレ>
この値を引数と呼びます。
引数は、サブルーチンが呼び出されたときにサブルーチンに渡されるパラメータ値です。
引数には定数値だけでなく、変数や算術式も使用できます。