题目描述
给出平面坐标上不在一条直线上三个点坐标 (x1,y1),(x2,y2),(x3,y3)(x1,y1),(x2,y2),(x3,y3),坐标值是实数,且绝对值不超过 100.00,求围成的三角形周长。保留两位小数。
对于平面上的两个点 (x1,y1),(x2,y2)(x1,y1),(x2,y2),则这两个点之间的距离 dis=(x2−x1)2+(y2−y1)2dis=(x2−x1)2+(y2−y1)2
输入格式
输入三行,第 ii 行表示坐标 (xi,yi)(xi,yi),以一个空格隔开。
输出格式
输出一个两位小数,表示由这三个坐标围成的三角形的周长。
输入数据 1
0 0
0 3
4 0
Copy
输出数据 1
12.00
Copy
提示
数据保证,坐标均为实数且绝对值不超过 100100,小数点后最多仅有 33 位。
代码
#include<bits/stdc++.h>
using namespace std;
double t1,t2;
double d(double x1,double y1,double x2,double y2){
t1=(x2-x1)*(x2-x1);
t2=(y2-y1)*(y2-y1);
return sqrt(t1+t2);
}
int main(){
double x1,y1,x2,y2,x3,y3,sum=0;
cin>>x1>>y1>>x2>>y2>>x3>>y3;
sum+=d(x1,y1,x2,y2);
sum+=d(x1,y1,x3,y3);
sum+=d(x2,y2,x3,y3);
printf("%.2lf",sum);
return 0;
}
标签:x1,周长,double,距离,x2,y1,y3,y2,函数
From: https://blog.csdn.net/2401_87061204/article/details/143468953