[問題] 為什麼我開根號出來是錯的!

看板C_and_CPP (C/C++)作者 (沒得閃)時間13年前 (2012/10/23 02:14), 編輯推噓2(205)
留言7則, 5人參與, 最新討論串1/1
以下是我寫的程式 .................分隔線.................. #include<iostream> using namespace std; #include<cmath> int main () { double a,b,c,d,s,f; cout<<"請輸入三角形三邊長\n"; cin>>a>>b>>c; if (a*a+b*b>c*c&&a*a+c*c>b*b&&c*c+b*b>a*a) {cout<<"你所輸入的是一個銳角三角形\n";} else if (a*a+b*b==c*c||a*a+c*c==b*b||c*c+b*b==a*a) {cout<<"你所輸入的是一個直角三角形\n";} else if (a*a+b*b<c*c||a*a+c*c<b*b||c*c+b*b<a*a) {cout<<"你所輸入的是一個鈍角三角形\n";} s=(a+b+c)/2; d=(s*(s-a)*(s-b)*(s-c))/2; f=sqrt(d); cout << "面積為"<<f<<"平方單位\n"; system ("pause"); } .................以上................. 我不知道為什麼我最後顯示的數字都是4.246 (我是以3,4,5為三角形三邊長) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.242.68.149

10/23 02:34, , 1F
d不用/2
10/23 02:34, 1F

10/23 12:02, , 2F
a*a+b*b>c*c&&a*a+c*c>b*b&&c*c+b*b>a*a這麼多*不會累嗎
10/23 12:02, 2F

10/23 14:18, , 3F
海龍公式~你又多/2了
10/23 14:18, 3F

10/23 20:03, , 4F
回二樓 因為我剛學 還不知道要用什麼辦法
10/23 20:03, 4F

10/23 20:04, , 5F
謝謝大大們解惑 ^^
10/23 20:04, 5F

10/24 08:04, , 6F
先把三個數排序一下 再用餘弦定理 程式碼看起來比較
10/24 08:04, 6F

10/24 08:09, , 7F
乾淨 再用正餘弦互換就能用absin(θ)/2求面積
10/24 08:09, 7F
文章代碼(AID): #1GXOpjxA (C_and_CPP)
文章代碼(AID): #1GXOpjxA (C_and_CPP)