当我这样做时,我的错误值
NSLog(@"cos 90 is %.f", cos(90.0));
我得到的答案是-0。当我进行谷歌搜索时,这就是我所得到的:
cos(90弧度)= - 0.448073616。
然而,我的卡西欧计算器给出的答案是0,而且当我小时候长大的时候,cos 90 = 0
被钻进了我的大脑。
谁是对的,是ObjC,Google还是我的卡西欧计算器?
答案 0 :(得分:7)
这完全取决于你是以度数还是弧度来衡量。
正如你所说,90度(pi / 2弧度)的余弦为0.这几乎就是定义。
90弧度是一个圆圈的14.323945倍。唯一重要的部分是余数:圆圈的0.323945,或2.035406弧度。它的余弦是(正如你已经发现的)-0.448074。这个不是定义,所以实数是不合理的,我引用的只是近似值。
答案 1 :(得分:2)
将该行更改为:
NSLog(@"cos 90 is %0.5f", cos(90.0));
或
NSLog(@"cos 90 is %f", cos(90.0));
你会有更快乐的结果。
格式字符串中的“%.f
”令NSLog感到困惑。