NaN (Not-a-Number: 非数) とは,主に浮動小数点演算の結果が正常な結果でないことを表す特殊な表現形式です.
例えば asin 関数の引数に,区間 [-1, +1] 外の値を渡したり,sqrt 関数の引数に負の値を渡したりすると定義域エラー (domain error) が発生し,その結果として NaN が返されます.※
※ 処理系によっては NaN が生成されない場合があります.
何も浮動小数点例外を生成することなく,ほとんどすべての算術演算を通して伝播する NaN.
算術オペランドとして現れる場合,浮動小数点例外を発生する NaN.