プログラムを中心とした個人的なメモ用のブログです。 タイトルは迷走中。
内容の保証はできませんのであしからずご了承ください。

2018/08/26

[C#] 浮動小数の 0 除算

event_note2018/08/25 15:41

整数値を 0 で除算すると DivideByZeroException が発生しますが、浮動小数の場合は発生せず、非数値(NaN)が返ってきます。

なので、0 除算が発生したかどうかは、演算結果が非数値(NaN)かどうかで分かります。
しかし、以下のように直接比較しても一致しませんでした。

if (value == double.NaN)
{
}

非数値(NaN)かどうか調べたい場合は以下のように書くようです。

if (double.IsNaN(value))
{
}