Skip to main content

This documentation is for an older version of this product. See the latest version of this content.Opens in a new tab

演習 3

次の演習では、プロンプトへの回答を格納するためにパブリック変数を使用しないようにします。代わりに、リストを使用して回答を格納し、そのリストを引数としてメソッドに渡します。さらに、プロンプトにエラー・チェックを追加します。

  • パターン・マッチ演算子を使用して Name を検証するメソッドを記述します。これまで、名前を “First Last” と入力しましたが、ここでは、“Last,First” というコードで名前を検証します。無効な名前にはエラー・メッセージを表示します。

  • $Match を使用して Phone を検証するメソッド (無効な電話番号にはエラー・メッセージを返す) を記述します。

  • Phone プロンプトに既定のエリア・コードを追加し、またエリア・コードを持たない電話番号には、この既定コードを割り当てる行を追加します。

  • 誕生日を検証するため、メソッド $ZDateH で日付を内部形式に変換します。また日付は、必ず今日より前の日付を指定してください。無効な日付にはエラー・メッセージを表示します。このメソッドは、参照渡しによる引数を使用して誕生日の内部形式バージョンを返します。

  • プロンプトから新しい検証メソッドを呼び出し、有効なエントリになるまで各プロンプトを繰り返します。

  • Main() を変更して、Prompt() が参照によって変数 answers を渡し、Display() が値によって answers を渡すようにします。

  • Prompt() のシグニチャを変更して、参照によって answers 引数を取るようにし、Publiclist を削除します。$ListBuild を使用して answers を設定する行を最後に追加し、Name、Phone、および Date of Birth の内部形式を格納するようにします。

  • Display() のシグニチャを変更して、値によって answers 引数を取るようにし、Publiclist を削除します。$List または Set $ListBuild を使用して、answers から Name、Phone、および Date of Birth の内部形式を取得する行を先頭に追加します。$ZDate 関数を使用して、ユーザの入力方法に関係なく、標準形式で日付を表示します。

  • ObjectScript.DataEntry3 という名前を付けて保存し、コンパイルして、さまざまな入力に対して 3 つのプロンプトをテストします。

詳細を表示するには、下記をクリックします。

Step by Step Solution

FeedbackOpens in a new tab