给出平面上两个点的坐标(x1,y1),(x2,y2),求两点之间的曼哈顿距离。曼哈顿距离=|x1-x2|+|y1-y2|。
一行四个空格隔开的实数,分别表示x1,y1,x2,y2。
输出一个实数表示曼哈顿距离,保留三位小数。
输出一个实数表示曼哈顿距离,保留三位小数。
3.600
-10000<=x1,y1,x2,y2<=10000
C++代码
#include
#include // assert()
#include // abs()
#include // setiosflags(), setprecision()
using namespace std;
int main()
{
const double min_value = -10000;
const double max_value = 10000;
double x1, y1, x2, y2;
cin >> x1 >> y1 >> x2 >> y2;
assert(x1>=min_value && x1<=max_value);
assert(y1>=min_value && y1<=max_value);
assert(x2>=min_value && x2<=max_value);
assert(y2>=min_value && y2<=max_value);
double distance = abs(x1-x2) + abs(y1-y2);
cout << setiosflags(ios::fixed);
cout << setprecision(3) << distance << endl;
return 0;
}