EGL mathLib 関数は、一般的な数学関数および三角関数を実行します。
mathLib 関数の多くは入出力の型として FLOAT を使用するため、関数は、代入互換性のあるさまざまな値に対して使用できます。 10 進値から浮動小数点への変換 (およびその逆方向への変換) を行う際、精度が下がる場合があることに注意してください。
mathLib 関数は、すべてのターゲット・システムにおいて、COBOL および Java™ の両方に対して生成されたコード内で機能します。 Java の場合、 EGL は、Java StrictMath クラス内の、EGL 関数と同等の機能を持つメソッドを使用します。 このことによって、すべての Java 仮想マシンで、実行時の動作が同じになります。
次の表は、システム・ライブラリー mathLib 内の関数のリストです。
| システム関数/呼び出し | 説明 |
|---|---|
| result = abs (numericVariable) | numericVariable の絶対値を戻す。 |
| result = acos (numericVariable) | numericVariable のアークコサインを戻す。 |
| result = asin (numericVariable) | numericVariable のアークサインを戻す。 |
| assign (source, target) | source の値を target に代入したときに、V6 の丸めを保持する。 |
| result = atan (numericVariable) | numericVariable のアークタンジェントを戻す。 |
| result = atan2 (numericVariable1, numericVariable2) | 戻り値の四分円を判別するために、両方の引数の符号を使用して、numericVariable1/numericVariable2 のアークタンジェントの基本値を計算する。 |
| result = ceiling (numericVariable) | numericVariable 以上の最も小さい整数を戻す。 |
| result = cos (numericVariable) | numericVariable のコサインを戻す。 |
| result = cosh (numericVariable) | numericVariable の双曲線コサインを戻す。 |
| result = decimals (numericVariable) | numericVariable に定義された小数点以下の桁数を戻す。 |
| result = exp (numericVariable) | numericVariable の指数値を戻す。 |
| result = floor (numericVariable) | numericVariable 以下の最も大きい整数を戻す。 |
| result = frexp (numericVariable, integer) | 数値を、.5 から 1 (戻り値) までの範囲の正規化された部分と 2 (integer で戻される) の累乗に分割する。 |
| result = ldexp (numericVariable, integer) | numericVariable に 2 の integer 乗を掛けた数値を戻す。 |
| result = log (numericVariable) | numericVariable の自然対数を戻す。 |
| result = log10 (numericVariable) | numericVariable の基底 10 対数を戻す。 |
| result = max (numericVariable1, numericVariable2) | numericVariable1 と numericVariable2 の大きい方の値を戻す。 |
| result = min (numericVariable1, numericVariable2) | numericVariable1 と numericVariable2 の小さい方の値を戻す。 |
| result = modf (numericVariable1, numericVariable2) |
|
| result = pow (numericVariable1, numericVariable2) | numericVariable1 の numericVariable2 乗を戻す。 |
| result = precision (numericVariable) | numericVariable の最大精度 (10 進数) を戻す。 |
| result = round (numericVariable, integer) | 数値または式を最も近い値 (最も近い 1,000 の倍数など) に丸めて、結果を戻す。 |
| result = sin (numericVariable) | numericVariable のサインを戻す。 |
| result = sinh (numericVariable) | numericVariable の双曲線サインを戻す。 |
| result = sqrt (numericVariable) | numericVariable がゼロ以上の場合、numericVariable の平方根を戻す。 |
| result = tan (numericVariable) | numericVariable のタンジェントを戻す。 |
| result = tanh (numericVariable) | numericVariable の双曲線タンジェントを戻す。 |
次の表は、mathLib 関数がエラーに対してどのように応答するかを示したものです。 2 つの異なるシナリオが適用されます。 デフォルトのシナリオでは、EGL が 2 番目の列に示された例外をスローします。 他のシナリオは、V6 例外モードで行われます (V6 の例外互換性の使用を参照してください)。 この場合、EGL は例外をスローせず、sysVar.errorCode は 3 番目の列にある値に設定されます。
| エラー | EGL の例外 (デフォルト) | sysVar.errorCode (V6 の例外) |
|---|---|---|
| 無効な入力 | RuntimeException | 00000008 |
| ターゲット変数に値を代入できない | RuntimeException | 00000012 |
| その他 | その他 | 00000016 |