21.10.2 関数値(数字項目のけた拡張機能)
組み込み関数の関数値の表現形式が,浮動小数点形式以外の数字型(整数を含む)の場合,-MaxDigits38オプションの指定に従って最大のけた数を拡張できる。ただし,関数値のけた数が返却値の意味によって固定となる場合は,拡張できない。
次に,組み込み関数の表現形式に対する数字項目のけた拡張機能の適用個所を示す。なお,次の表に記載のない関数については,けた数の拡張が適用されないため,マニュアル「COBOL2002 言語 標準仕様編」 「11. 組み込み関数(Intrinsic function)」を参照のこと。
関数名 |
表現形式 |
備考 |
---|---|---|
ANNUITY(X Y) (均等払い額) |
次に示す計算式を生成し既存の処理に従う。 (1) X=0の場合→1/Y (2) X>0の場合→X/(1-(1+X)**-Y) 関数値は,40けた10進浮動小数点形式とする。 |
浮動小数点形式を含む場合は,内部浮動小数点形式(8バイト) |
INTEGER(X) (引数以下の最大の整数) |
|
|
INTEGER-PART(X) (引数の整数部分の整数) |
|
|
MAX(X1...Xn) (最大値) |
引数が数字または整数でかつ浮動小数点形式を含まないとき
|
浮動小数点形式を含む場合は,内部浮動小数点形式(8バイト) |
MEAN(X1...Xn) (平均値) |
引数が数字または整数でかつ浮動小数点形式を含まないとき
|
浮動小数点形式を含む場合は,内部浮動小数点形式(8バイト) |
MEDIAN(X1...Xn) (中央値) |
|
左記以外の場合は,内部浮動小数点形式(8バイト) |
MIDRANGE(X1 ... Xn) (最大値と最小値の平均) |
浮動小数点形式を含まない場合は40けた10進浮動小数点形式
|
浮動小数点形式を含む場合は,内部浮動小数点形式(8バイト) |
MIN(X1 ... Xn) (最小値) |
引数が数字または整数でかつ浮動小数点形式を含まないとき
|
浮動小数点形式を含む場合は,内部浮動小数点形式(8バイト) |
MOD(X Y) (法) |
次に示す算術式の結果の形式に従う。 (X-(Y*FUNCTION INTEGER(X/Y))) 関数値は,40けた10進浮動小数点形式。 |
|
NUMVAL(X) (文字列→数字変換) |
関数値の表現形式は,外部10進形式18バイトとなる。 整数けた数:18-Dmax※ 小数けた数:Dmax※ Dmaxが19けたを超えた場合は,Dmaxを18けたに補正する。 |
|
NUMVAL-C(X) (編集文字列→数字変換) |
関数値の表現形式は,外部10進形式18バイトとなる。 整数けた数:18-Dmax※ 小数けた数:Dmax※ Dmaxが19けたを超えた場合は,Dmaxを18けたに補正する。 |
|
RANGE(X1 ... Xn) (範囲) |
|
|
REM(X Y) (剰余) |
次に示す算術式の結果の形式に従う。 (X-(Y*FUNCTION INTEGER-PART(X/Y))) 関数値は,40けた10進浮動小数点形式。 |
|
SUM(X1...Xn) (合計) |
次に示す算術式の結果の形式に従う。 X1...+Xn
|
浮動小数点形式を含む場合は,内部浮動小数点形式(8バイト) |
VARIANCE (X1...Xn) (分散の近似値) |
|
- 注※
-
Dmaxは,この関数を含む算術式のすべての作用対象と算術文,および転記の受け取り側作用対象のうち最大の小数けた数を示す。