2 つ以上の英数字、英字、または国別データ項目のうち、どれが最大値を持つかを判別するには、MAX または ORD-MAX 組み込み関数を使用します。 最小値を持つ項目を判別するには、MIN またはORD-MIN を使用します。これらの関数は、照合シーケンスに従って評価します。
USAGE NATIONAL を持つ数値項目も含めて、数値項目を比較するには、MAX、ORD-MAX、MIN、または ORD-MIN を使用することができます。 これらの組み込み関数では、引数の代数値が比較されます。
MAX および MIN 関数は、指定された引数の 1 つの内容を戻します。 例えば、プログラムに以下のデータ定義が含まれているとします。
05 Arg1 Pic x(10) Value “THOMASSON ”. 05 Arg2 Pic x(10) Value “THOMAS ”. 05 Arg3 Pic x(10) Value “VALLEJO ”.
次のステートメントは、VALLEJObbb を Customer-record の最初の 10 文字位置に割り当てます (ここで b はブランク・スペースを表します)。
Move Function Max(Arg1 Arg2 Arg3) To Customer-record(1:10)
代わりに MIN を使用すると、THOMASbbbb が割り当てられます。
ORD-MAX および ORD-MIN 関数は、指定された引数のリストの中で最大値または最小値を持つ引数の (左からカウントした) 序数位置を表す整数を戻します。 上記の例で ORD-MAX 関数を使用すると、数字関数への参照が有効場所にないので、 コンパイラーはエラー・メッセージを出すことになります。次のステートメントは、ORD-MAX の有効な使用例を示しています。
Compute x = Function Ord-max(Arg1 Arg2 Arg3)
上のステートメントは、直前の例と同じ引数が使用された場合、整数 3 を x に割り当てます。代わりに ORD-MIN を使用した場合には、整数 2 が戻されます。Arg1、Arg2、および Arg3 が配列 (テーブル) の連続エレメントであったなら、上の例はもっと現実的なものになると思われます。
任意の引数に国別項目を指定する場合、すべての引数をクラス国別と指定する必要があります。
関連タスク
算術の実行
組み込み関数を使用したテーブル項目の処理
英数字または国別関数によって戻される可変長結果
関連参照
MAX
(「COBOL for Windows 言語解説書」)
MIN
(「COBOL for Windows 言語解説書」)
ORD-MAX
(「COBOL for Windows 言語解説書」)
ORD-MIN
(「COBOL for Windows 言語解説書」)