0

DDMathParser を使って電卓アプリを作っています。私が直面している問題はsin(pi())、0 が返されず、1.2246...e-16 のような些細な数字が返されることです。0に変換する方法はありますか?ありがとうございました。

4

1 に答える 1

1

-descriptionメソッド onNSNumberは、基になる数値を正確に表していません。

NSLog(@"%f", sin(M_PI));    // logs 0.000000
NSLog(@"%@", @(sin(M_PI))); // logs 1.224646799147353e-16

これを回避するには、 の を引き出す-doubleValueと、次のNSNumberようになります0

NSLog(@"%f", @(sin(M_PI)).doubleValue); // logs 0.000000
于 2015-02-10T05:34:03.143 に答える