1
我正在使用C#十進制高精度項目,但卡在Atan方法,因爲它只接受雙。將十進制轉換爲double會導致數據丟失,所以我希望能寫出自己的方法。有人可以告訴我該怎麼做嗎?提前致謝!如何創建自己的atan(反正切)方法?
我正在使用C#十進制高精度項目,但卡在Atan方法,因爲它只接受雙。將十進制轉換爲double會導致數據丟失,所以我希望能寫出自己的方法。有人可以告訴我該怎麼做嗎?提前致謝!如何創建自己的atan(反正切)方法?
你不需要重新發明輪子,你可以使用DecimalMath類,它有一個Atan方法,該方法的參數是十進制的,該方法也返回一個十進制數。閱讀更多here。
如果你絕對要推倒重來,並實現自己,這個公式可能對您有用:
反正切(Z)=((Z^1)/ 1) - ((Z^3)/ 3)+((Z^5)/ 5)+((( - 1)^((2 * N)-1))*(((2 * N)-1)/((2 * N )-1)))
n越大,結果越準確。