2016-11-24 151 views
-3

我做了一個程序,要求用戶3長度,並確定它是否是等邊,斜角,等腰。 我想知道如何在Java中計算角度(所有3邊都給出),以便程序確定它是鈍角還是銳角或直角。請幫助我。簡單的方法來獲取角度

編輯實際上提供了一種方法來完成它,所以請不要低估。 建議歡迎。

double pi = 3.14159265359;// value of pi 

double angle = Math.round(Math.acos((b*b + c*c - a*a)/(2.0*b*c)) * (180.0/pi)); // discovering angles 
double angle2 = Math.round(Math.acos((a*a + c*c - b*b)/(2.0*a*c)) * (180.0/pi)); 
double angle3 = Math.round(180 - (angle2 + angle)); 
+2

你的問題可能是幾何問題,而不是編程問題。你有數學答案嗎?如果不是,解決方案的第一件事就是閱讀幾何和三角函數。如果你有一個數學解決方案,你有沒有試圖實現它? – bli

+0

+ bli如果我沒有把數學和程序設計放在一起,並且讀完整個問題,我所要求的是一種解決問題的方法,因爲我知道Java有一個。請刪除您的評論。順便說一句,我從來不問問題沒有研究或實施(我很瞭解我的數學)。 – lordzee

+0

好吧,所以你的問題實際上是一個實施。大概你可以展示你已經擁有的代碼和你想要翻譯成java的數學,這樣人們就可以被引導到更具體的回答方式。我想這會減少那些看起來太寬泛(我沒有downvote)的人的數量。 – bli

回答

0

正如你所知道的三角形的邊,您可以通過以下以下步驟找到角度只是...

在java中,您可以使用Math.acos(val)來計算反餘弦。

+0

Rimon真棒,所以在Math.acos的括號內將放置什麼。取而代之的是價值,它只是長度。基本上只是把長度a和b代替價值。最後一步是從180減去兩個總數。它是否在程度上給予了價值。 – lordzee

+0

假設你想計算角度A,那麼公式就是'cosA =(b^2 + c^2 - a^2)/ 2bc'所以'A = Math.acos((b^2 + c^2 - a^2)/ 2bc)'。 你會得到Radians的A值。如果你想在Degree中得到那個,那麼你只需要乘以'180 * Math.PI'。 [看這裏](https://www.mathsisfun.com/algebra/trig-solving-sss-triangles.html)清楚瞭解... –

相關問題