求一个"通过三角形的3个点坐标求其面积的C++程序"如题 谢谢了

高手帮忙!!!!... 高手 帮忙!!!! 展开
 我来答
血刺小Y佇w
推荐于2016-12-01 · TA获得超过194个赞
知道答主
回答量:108
采纳率:50%
帮助的人:103万
展开全部
#include<iostream> #include<cmath> using namespace std; int main() { double data[3][2]; double a[3],p;//存储三条边的长度。 int i; for(i=0;i<3;i++) { cout<<"请输入第"<<i+1<<"个点"<<endl; cin>>data[i][0]>>data[i][1]; } p=pow(data[0][0]-data[1][0],2)+pow(data[0][1]-data[1][1],2); a[0]=sqrt(p); p=pow(data[0][0]-data[2][0],2)+pow(data[0][1]-data[2][1],2); a[1]=sqrt(p); p=pow(data[1][0]-data[2][0],2)+pow(data[1][1]-data[2][1],2); a[2]=sqrt(p); //判断能否构成三角形 if(a[0]+a[1]<=a[2]||a[0]+a[2]<=a[1]||a[1]+a[2]<=a[0]) return 0; //利用海伦公式。s=sqr(p*(p-a)(p-b)(p-c)); p=(a[0]+a[1]+a[2])/2; double s=sqrt(p*(p-a[0])*(p-a[1])*(p-a[2])); cout<<"面积是:"<<s<<endl; return 0; }
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
l7722526
推荐于2018-04-08 · TA获得超过2.7万个赞
知道大有可为答主
回答量:2.8万
采纳率:84%
帮助的人:3777万
展开全部
#include<iostream>
#include<cmath>
using namespace std;

int main()
{
double data[3][2];
double a[3],p;//存储三条边的长度。
int i;
for(i=0;i<3;i++)
{
cout<<"请输入第"<<i+1<<"个点"<<endl;
cin>>data[i][0]>>data[i][1];
}
p=pow(data[0][0]-data[1][0],2)+pow(data[0][1]-data[1][1],2);
a[0]=sqrt(p);
p=pow(data[0][0]-data[2][0],2)+pow(data[0][1]-data[2][1],2);
a[1]=sqrt(p);
p=pow(data[1][0]-data[2][0],2)+pow(data[1][1]-data[2][1],2);
a[2]=sqrt(p);

//判断能否构成三角形
if(a[0]+a[1]<=a[2]||a[0]+a[2]<=a[1]||a[1]+a[2]<=a[0]) return 0;

//利用海伦公式。s=sqr(p*(p-a)(p-b)(p-c));
p=(a[0]+a[1]+a[2])/2;
double s=sqrt(p*(p-a[0])*(p-a[1])*(p-a[2]));
cout<<"面积是:"<<s<<endl;

return 0;
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式