そうそう、それ零割りトラップだろ?だったら浮動小数点の零の検出を == 0 でしちゃいけない
fabs(n) < εを使え、εは適当な定数だ