c++反三角函数的使用(反三角函数求角度)

最近写的东西用到了数学库中的acos函数,但是代码在运行的时候有时候会出莫名其妙的错误,比如返回值是个特别大的数。最后在debug的时候发现acos返回的数据很奇怪,但是传入的参数明明没有问题,可以保证是(-1,1)。回想起,double类型的末尾数据是不确定的,比如当double类型数据alpha=1.0时其真实值可能是1.00001;这明明是很早就知道的,但是在写代码的时候…

大家好,又见面了,我是你们的朋友全栈君。

最近写的东西用到了数学库中的acos函数,但是代码在运行的时候有时候会出莫名其妙的错误,比如返回值是个特别大的数。

最后在debug 的时候发现acos返回的数据很奇怪,但是传入的参数明明没有问题,可以保证是(-1,1)。

回想起,double类型的末尾数据是不确定的,比如当double类型数据alpha = 1.0时其真实值可能是1.00001;这明明是很早就知道的,但是在写代码的时候有时候却很容易忘记。所以在acos部分加入界限判别部分

acos((alpha > 0.99) ? 0.99 : (alpha < -0.99) ? -0.99 : alpha):

借此以作提醒,熟记熟用基本知识!

转载于:https://www.cnblogs.com/jerry323/p/8640678.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/128916.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 怎么复制一台虚拟机到另外一台电脑上

    怎么复制一台虚拟机到另外一台电脑上怎么复制一台虚拟机到另外一台电脑上

    2022年4月23日
  • WIN10系统菜单键按下无反应解决办法

    WIN10系统菜单键按下无反应解决办法今天中午,电脑的菜单键突然不好用了,搜索键也不能用,上百度经验也找了。那些方法多试过了,都不好用,最后在百度知道那找到了答案,特此分享给大家:1. 在键盘上按下win+R键,或在开始菜单图标上点击右键选择运行;2. 输入powershell,按下“确定”运行;3. 在窗口里输入或复制粘贴以下命令,注意只有一行:Get-AppxPackage|%{Add-AppxPackage-Di…

    2022年5月22日
  • javabase64编码原理和解码,加密案例

    javabase64编码原理和解码,加密案例javabase64编码原理和解码,加密案例

    2022年4月23日
  • mac. navcat 激活码【2022最新】2022.02.19

    (mac. navcat 激活码)本文适用于JetBrains家族所有ide,包括IntelliJidea,phpstorm,webstorm,pycharm,datagrip等。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年4月1日
  • html邮件签名制作,制作自己的个性化电子邮件签名[通俗易懂]

    html邮件签名制作,制作自己的个性化电子邮件签名[通俗易懂]制作自己的个性化电子邮件签名您是不是经常给朋友发E-mail?如果每个邮件中都有一个精美的签名文件,文件中包括通讯地址、邮政编码以及电话、手机、QQ号码等联系方法,甚至可以包含简单的声音文件,并且每次在OutlookExpress中新建邮件时,可以自动签名——岂不很美?我们就一起来制作这样一个签名文件。1、启动OE,单击工具栏“新邮件”按钮,打开“新邮件”窗口。输入签名内容,包括通讯地址、电话…

    2022年10月9日
  • 实验四:定时器实验[通俗易懂]

    实验四:定时器实验[通俗易懂]一、实验目的1、掌握单片机定时/计数器的使用方法。2、掌握定时/计数器编程方法。二、实验设备及软件1、PC机2、KEIL513、PROTEAUS三、实验任务1、循环点亮流水等D1-D2-D3…D8, 延时采用定时器T0定时100ms2、循环点亮流水等D1-D2-D3…D8, 延时采用定时器T1定时1s四、仿真电路

    2022年7月26日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号