這段代碼應該計算並返回一個複數的實數部分,幅度爲a,角度爲b。它給了我錯誤的數字。簡單座標轉換的問題
x = (a*(cos(b*(180/pi))));
但是,這給了我正確的數字,如果角度以弧度給出。
x =(a *(cos(b)));
PI被定義爲const雙PI = 3.142
任何想法?我看不出爲什麼x應該是錯誤的,但在第二個例子中是正確的。
這段代碼應該計算並返回一個複數的實數部分,幅度爲a,角度爲b。它給了我錯誤的數字。簡單座標轉換的問題
x = (a*(cos(b*(180/pi))));
但是,這給了我正確的數字,如果角度以弧度給出。
x =(a *(cos(b)));
PI被定義爲const雙PI = 3.142
任何想法?我看不出爲什麼x應該是錯誤的,但在第二個例子中是正確的。
您有向後轉換:在計算餘弦值之前,公式將b
從弧度更改爲度數。但是你想從degress轉換爲弧度。正確的公式是
x = (a*(cos(b*(pi/180)));
雖然可以使用更少的括號和使用更多的間距:
x = a * cos(b * pi/180);
由於180度爲1個PI弧度。度數到弧度的公式應該是
弧度=(度/ 180)pi。
因此
x = (a*(cos((b/180)*pi))));
您沒有使用式正確
這可以寫爲第一式應爲:
X =(A * COS((B * PI)/ 180));
謝謝。我知道我只是在做一些愚蠢的事情。 – balloony