http://acm.hdu.edu.cn/showproblem.php?pid=2001
Problem Description
输入两点坐标(X1,Y1),(X2,Y2),计算并输出两点间的距离。
Input
输入数据有多组,每组占一行,由4个实数组成,分别表示x1,y1,x2,y2,数据之间用空格隔开。
Output
对于每组输入数据,输出一行,结果保留两位小数。
#include <iostream>
#include <cmath> //算sqrt与pow函数
#include <iomanip> //格式化输出
using namespace std;
int main()
{
double x1,y1,x2,y2;
double s;
while(cin>>x1>>y1>>x2>>y2){
s=(double)sqrt(pow((x2-x1),2.0)+pow((y2-y1),2.0));
cout<<setiosflags(ios::fixed)<<setprecision(2)<<s<<endl; //输出精度为2位小数
}
return 0;
}
【后记】
1.记得上一道题在输入上纠结,这一道题在格式化输出上纠结,发现杭电oj会记录每一次的提交结果,看着WA感觉好羞耻
2.话说现在一看到平方就担心溢出orz还好这道题没坑