首先解決數學問題:
根據SSS,ASA,SAS,AAS可以確定唯一的三角形。
SSA這種情況,可以畫出兩個三角形,一個鈍角一個銳角,只有是直角三角形時是一個。
再解決程式設計問題:
1:如果給定的是SSS,
設三角形三邊分別為a,b,c.
求出max(a,b,c),
根據max(a,b,c)是否小於sum(a,b,c)-max(a,b,c)確定這樣的三條邊能否組成三角形,
根據餘弦定理cos A=(b2+c2-a2)/2bc
求出最長邊對應的角度,
根據角度是多少判斷是直角銳角鈍角三角形。
2:如果是AAS,ASA:
檢查sum(A,B)是否超出180,確定能否組成三角形。
然後,可以直接比較sum(A,B)與90度的關係,來確定是什麼三角形。
3:其它情況轉化成情況1即可。
具體編碼知道vb語法就不難寫出來了。
首先解決數學問題:
根據SSS,ASA,SAS,AAS可以確定唯一的三角形。
SSA這種情況,可以畫出兩個三角形,一個鈍角一個銳角,只有是直角三角形時是一個。
再解決程式設計問題:
1:如果給定的是SSS,
設三角形三邊分別為a,b,c.
求出max(a,b,c),
根據max(a,b,c)是否小於sum(a,b,c)-max(a,b,c)確定這樣的三條邊能否組成三角形,
根據餘弦定理cos A=(b2+c2-a2)/2bc
求出最長邊對應的角度,
根據角度是多少判斷是直角銳角鈍角三角形。
2:如果是AAS,ASA:
檢查sum(A,B)是否超出180,確定能否組成三角形。
然後,可以直接比較sum(A,B)與90度的關係,來確定是什麼三角形。
3:其它情況轉化成情況1即可。
具體編碼知道vb語法就不難寫出來了。