MathIsValidNumber 関数
この関数は、実数 (float型・double型) の状態をチェックします。チェック内容は、実数が表示可能な数字であるかどうかを判定します。
たとえば、値がプラス または マイナスの無限大になるもの、非数 (計算ができないもの。たとえば loge(-2) など) は、表示不可能な数字になります。
データ型と構成・戻り値
bool MathIsValidNumber(①);
戻り値は、数字として表示が可能であれば true、表示することができない数字 または 計算ができないものは falseが返されます。
falseが返されるものとして、例えば、値がプラス または マイナスの無限大になるもの、非数(計算ができないもの。例えば loge(-2) など。)があります。
引数 [1]
MathIsValidNumber関数は 1個の引数で構成されます。
番 号 | 引数名 | データ型 | 単位 | 初期値 | 説明 |
---|---|---|---|---|---|
① | number | double | - | - | チェックする数値。 |
使用例
MathIsValidNumber関数を使用した数値の判定
例として、arcsin(1.0)と arcsin(1.1)の数値を MathIsValidNumber関数に判定させます。
コード
// MathIsValidNumber関数を使用した数値の判定
#property strict
void OnInit() {
Print("MathArcsin(1.0):", MathIsValidNumber(MathArcsin(1.0)));
Print("MathArcsin(1.1):", MathIsValidNumber(MathArcsin(1.1)));
}
コードをコンパイルして実行する方法はこちらを参考にしてください。(デモ口座でお試しください)
結果
arcsin(X)の Xの値は -1~1の範囲でしか存在しないため、1.1で計算はできないので falseになります。
その他として、対数計算(log)や平方根計算(√)にマイナスを用いると計算ができませんので判定は falseになります。