mrB*_*sta 3 math trigonometry ios swift
arcus cotangent(arccot)如何在swift中实现?导入需要哪个库,我正在使用达尔文,但在试图打电话时我看不到它?
<math.h>如果你的话,所有的数学函数都可以在Swift中找到
import Darwin
Run Code Online (Sandbox Code Playgroud)
(如果您导入Foundation或UIKit,则自动导入).
现在逆余切函数不在其中,但您可以atan()使用关系轻松计算它(参见反向三角函数):
arccot(x) = arctan(1/x) (for x > 0)
arccot(x) = ? + arctan(1/x) (for x < 0)
arccot(x) = ?/2 - atan(x)
Run Code Online (Sandbox Code Playgroud)
前两个公式在数值上更适合大
(绝对)值x,最后一个公式更适合小值,因此您可以将acot()函数定义为
func acot(x : Double) -> Double {
if x > 1.0 {
return atan(1.0/x)
} else if x < -1.0 {
return M_PI + atan(1.0/x)
} else {
return M_PI_2 - atan(x)
}
}
Run Code Online (Sandbox Code Playgroud)
对于Swift 3替换M_PI为Double.pi.