本文来自(http://refer.it-manual.com/cobol.html)
COBOL関数(JIS-COBOL規格標準)の一覧表を掲載しています。 COBOL関数一覧表は、各項目での並べ替えが可能です。 一般的なCOBOL関数(FUNCTION 関数名(引数)という書式)を掲載しています。
使用例の引数「WK-VALUE」は単独値、「WK-TABLE」は値リストを意味します。 引数が値リストの場合は、「SUM(1 2 3 4 5 6)」の様に、値を半角スペースで区切って指定することも可能です。 使用例は便宜上1行で記載していますが、実際のソースコードには、対応する領域に記載する必要があります。
関数 | 戻り値 | 使用例 | 備考 |
---|---|---|---|
LENGTH(引数) | データ項目の大きさ | COMPUTE WK-AFTER = FUNCTION LENGTH(WK-VALUE). | 戻り値は整数 データ型により結果が異なる |
MAX(引数) | 値リストの最大値 | COMPUTE WK-AFTER = FUNCTION MAX(WK-TABLE(ALL)). | 戻り値の型は、引数により決定 |
MIN(引数) | 値リストの最小値 | COMPUTE WK-AFTER = FUNCTION MIN(WK-TABLE(ALL)). | 戻り値の型は、引数により決定 |
ORD-MAX(引数) | 値リストの最大値の要素番号(整数) | COMPUTE WK-AFTER = FUNCTION ORD-MAX(WK-TABLE(ALL)). | 対象が複数の場合は、最初の要素番号を返す |
ORD-MIN(引数) | 値リストの最小値の要素番号(整数) | COMPUTE WK-AFTER = FUNCTION ORD-MIN(WK-TABLE(ALL)). | 対象が複数の場合は、最初の要素番号を返す |
SUM(引数) | 値リストの合計値 | COMPUTE WK-AFTER = FUNCTION SUM(WK-TABLE(ALL)). | 引数は数値型 |
MEAN(引数) | 値リストの平均値 | COMPUTE WK-AFTER = FUNCTION MEAN(WK-TABLE(ALL)). | 戻り値は小数を含む数値型 |
MEDIAN(引数) | 値リストの中間値 | COMPUTE WK-AFTER = FUNCTION MEDIAN(WK-TABLE(ALL)). | 戻り値は小数を含む数値型 |
MIDRANGE(引数) | 値リストの最大・最小の平均値 | COMPUTE WK-AFTER = FUNCTION MIDRANGE(WK-TABLE(ALL)). | 戻り値は小数を含む数値型 |
RANGE(引数) | 値リストの最大から最小を減算した値 | COMPUTE WK-AFTER = FUNCTION RANGE(WK-TABLE(ALL)). | 戻り値は小数を含む数値型 |
SQRT(引数) | 値の平方根 | COMPUTE WK-AFTER = FUNCTION SQRT(WK-VALUE). | 引数は0以上の数値 |
FACTORIAL(引数) | 値の階乗(整数) | COMPUTE WK-AFTER = FUNCTION FACTORIAL(WK-VALUE). | 引数は0以上の整数 |
LOG(引数) | 値の対数 | COMPUTE WK-AFTER = FUNCTION LOG(WK-VALUE). | 底をeとした場合の対数 |
LOG10(引数) | 値の対数 | COMPUTE WK-AFTER = FUNCTION LOG10(WK-VALUE). | 底を10とした場合の対数 |
COS(引数) | 値の余弦 | COMPUTE WK-AFTER = FUNCTION COS(WK-VALUE). | 引数の単位はラジアン |
ACOS(引数) | 値の逆余弦 | COMPUTE WK-AFTER = FUNCTION ACOS(WK-VALUE). | 戻り値の単位はラジアン |
SIN(引数) | 値の正弦 | COMPUTE WK-AFTER = FUNCTION SIN(WK-VALUE). | 引数の単位はラジアン |
ASIN(引数) | 値の逆正弦 | COMPUTE WK-AFTER = FUNCTION ASIN(WK-VALUE). | 戻り値の単位はラジアン |
TAN(引数) | 値の正接 | COMPUTE WK-AFTER = FUNCTION TAN(WK-VALUE). | 引数の単位はラジアン |
ATAN(引数) | 値の逆正接 | COMPUTE WK-AFTER = FUNCTION ATAN(WK-VALUE). | 戻り値の単位はラジアン |
MOD(引数1 引数2) | 値のモジュロー | COMPUTE WK-AFTER = FUNCTION MOD(WK-VALUE-1 WK-VALUE-2). | 引数1は被除数、引数2は除数 モジュローとは、被除数と除数で割り切れる被除数に最も近い値の差 |
REM(引数1 引数2) | 値の除算の余り | COMPUTE WK-AFTER = FUNCTION REM(WK-VALUE-1 WK-VALUE-2). | 引数1は被除数、引数2は除数 戻り値は小数を含む数値型 |
VARIANCE(引数) | 値リスト分散の近似値 | COMPUTE WK-AFTER = FUNCTION VARIANCE(WK-TABLE(ALL)). | 戻り値は小数を含む数値型 |
STANDARD-DEVIATION(引数) | 値リスト標準偏差の近似値 | COMPUTE WK-AFTER = FUNCTION STANDARD-DEVIATION(WK-TABLE(ALL)). | 戻り値は小数を含む数値型 |
INTEGER(引数) | 値を超えない整数 | COMPUTE WK-AFTER = FUNCTION INTEGER(WK-VALUE). | 戻り値は整数 |
INTEGER-PART(引数) | 値の整数部 | COMPUTE WK-AFTER = FUNCTION INTEGER-PART(WK-VALUE). | 戻り値は整数 |
RANDOM(引数) | 乱数 | COMPUTE WK-AFTER = FUNCTION RANDOM(WK-VALUE). | 戻り値は小数を含む数値型 引数は省略可 |
ANNUITY(引数1 引数2) | 均等払い額 | COMPUTE WK-AFTER = FUNCTION ANNUITY(WK-VALUE-1 WK-VALUE-2). | 引数1は利率、引数2は支払回数 戻り値は小数を含む数値型 |
NUMVAL(引数) | 変換された数値型 | COMPUTE WK-AFTER = FUNCTION NUMVAL(WK-VALUE). | 戻り値は小数を含む数値型 引数は英数字型の数値データを文字定数や英数字型でセット |
NUMVAL-C(引数) | 変換された数値型 | COMPUTE WK-AFTER = FUNCTION NUMVAL-C(WK-VALUE). | 戻り値は小数を含む数値型 引数は数値編集形式の数値データを文字定数や英数字型でセット |
REVERSE(引数) | 反転した文字列 | MOVE FUNCTION REVERSE(WK-VALUE) TO WK-AFTER. | 引数、戻り値は英数字型 |
CHAR(引数) | 文字コードに対応する文字 | MOVE FUNCTION CHAR(WK-VALUE) TO WK-AFTER. | 引数に指定する文字コードは実際のコード+1を指定 |
ORD(引数) | 文字の文字コード | SUBSTRACT 1 FROM FUNCTION ORD(WK-VALUE) GIVING WK-AFTER. | 戻り値の文字コードは実際のコード-1を返す |
NATIONAL(引数) | 変換された全角文字 | MOVE FUNCTION NATIONAL(WK-VALUE) TO WK-AFTER. | 引数は半角数値型、半角英数字型 |
CAST-ALPHANUMERIC(引数) | 変換された英数字型データ項目 | MOVE FUNCTION CAST-ALPHANUMERIC(WK-VALUE) TO WK-AFTER. | 戻り値を受け取るデータ項目の長さは、引数に指定した文字列の2倍 |
UPPER-CASE(引数) | 大文字に変換された文字列 | MOVE FUNCTION UPPER-CASE(WK-VALUE) TO WK-AFTER. | 戻り値は英数字型 |
LOWER-CASE(引数) | 小文字に変換された文字列 | MOVE FUNCTION LOWER-CASE(WK-VALUE) TO WK-AFTER. | 戻り値は英数字型 |
CURRENT-DATE | 現在日時 | MOVE FUNCTION CURRENT-DATE TO WK-AFTER. | 日時を21桁の情報として返す |
DATE-OF-INTEGER(引数) | 通日をYYYYMMDD形式に変換した値 | COMPUTE WK-AFTER = FUNCTION DATE-OF-INTEGER(WK-VALUE). | 戻り値は整数 基準日は1601/01/01 |
INTEGER-OF-DATE(引数) | YYYYMMDD形式を通日に変換した値 | COMPUTE WK-AFTER = FUNCTION INTEGER-OF-DATE(WK-VALUE). | 戻り値は整数 基準日は1601/01/01 |
DAY-OF-INTEGER(引数) | 通日を年日形式に変換した値 | COMPUTE WK-AFTER = FUNCTION DAY-OF-INTEGER(WK-VALUE). | 戻り値は整数 基準日は1601/01/01 |
INTEGER-OF-DAY(引数) | 年日形式を通日に変換した値 | COMPUTE WK-AFTER = FUNCTION INTEGER-OF-DAY(WK-VALUE). | 戻り値は整数 基準日は1601/01/01 |
WHEN-COMPILED | コンパイルされた日 | MOVE FUNCTION WHEN-COMPILED TO WK-AFTER. | 日時を21桁の情報として返す |