2017-10-10 141 views
0

當我使用仙COS函數給出錯誤的結果爲度大於90

cout<<"Cos: "<<cos(_theta)<<" Sin: "<<sin(_theta)<<endl; 

其中_theta = 180,它給輸出,

Cos: -0.59846 Sin: -0.801153 

但輸出應該是

Cos: -1 Sin: 0 

我不明白爲什麼會發生這種情況!

+3

我假設你存儲THETA度?如果是這樣,則在使用C trig函數時需要將其轉換爲弧度。 – Steve

+0

您使用它的方式幾乎可以在任何角度得到錯誤的結果。傳遞的參數應該是弧度,不是度數 – user463035818

+0

你是對的!愚蠢.. – Tahlil

回答

4

函數cos和sin以弧度而不是度數接收角度。

1

向谷歌搜索「cos(180)」=> -0.59846006905
這是因爲它使用弧度而不是度數。
弧度,180°的半圈,所以它是圓周率,要求谷歌COS(PI)=> -1
:)

相關問題