Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
DDMathParser を使って電卓アプリを作っています。私が直面している問題はsin(pi())、0 が返されず、1.2246...e-16 のような些細な数字が返されることです。0に変換する方法はありますか?ありがとうございました。
sin(pi())
-descriptionメソッド onNSNumberは、基になる数値を正確に表していません。
-description
NSNumber
NSLog(@"%f", sin(M_PI)); // logs 0.000000 NSLog(@"%@", @(sin(M_PI))); // logs 1.224646799147353e-16
これを回避するには、 の を引き出す-doubleValueと、次のNSNumberようになります0。
-doubleValue
0
NSLog(@"%f", @(sin(M_PI)).doubleValue); // logs 0.000000