
我是iOS的初学者.我使用一些在线教程来学习Swift,现在我正在尝试开发自己的计算器.有一个任务是由我自己的“罪”和“cos”按钮,它将返回输入值的正弦或余弦函数.
当然,在Swift中有sin()和cos()函数,但我发现它以弧度而不是度数返回值.我做了搜索并找到了代码,就像这样
func sind(degrees: Double) -> Double {return sin(degrees * M_PI / 180.0)} 这是我在我的代码中实现的.现在一切都很好,按钮返回正确的值.但是180度的正弦值为0,当我在计算器中输入180并按“sin”按钮时,它返回另一个值.对于90度的余弦相同,应为0但返回另一个值.
你能解释一下如何修复它吗?完整代码在github:https://github.com/senator14/firstcalculator.git
解决方法 正弦和余弦函数的问题是M_PI是一个无理数,大约定义为3.14159265358979323846264338327950288,这意味着它有一些错误.解决问题的一种可能方法是将输入范围-PI / 2转换为PI / 2.这减少了近似误差.以下内容将您的范围更改为-90到90度.
sin(((fmod(,360) > 270 ? fmod(,360) - 270 : ((fmod(,360) > 90) ? 180 - fmod(,360) : fmod(,360))) * M_PI / 180.00)) }
参考文献here
总结以上是内存溢出为你收集整理的ios – Swift中的三角函数全部内容,希望文章能够帮你解决ios – Swift中的三角函数所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)