21xrx.com
2024-12-22 22:28:37 Sunday
登录
文章检索 我的文章 写文章
C++实现曼哈顿距离
2023-06-29 08:16:18 深夜i     --     --
C++ 曼哈顿距离 实现

曼哈顿距离是计算两个点在网格状空间中的距离,即它们在横轴和纵轴上的距离之和。在C++中,我们可以使用以下代码实现曼哈顿距离的计算。


#include <iostream>

#include <cstdlib>

#include <cstdio>

using namespace std;

int ManhattanDistance(int x1, int y1, int x2, int y2) {

  return abs(x1 - x2) + abs(y1 - y2);

}

int main() {

  int x1, y1, x2, y2;

  cout << "请输入两个点的x,y坐标:" << endl;

  cin >> x1 >> y1 >> x2 >> y2;

  cout << "这两个点的曼哈顿距离是:" << ManhattanDistance(x1, y1, x2, y2) << endl;

  return 0;

}

在这个程序中,我们首先定义了一个ManhattanDistance函数,该函数接收4个整数参数x1,y1,x2和y2,分别代表两个点的横坐标和纵坐标。函数实现直接计算两个点的曼哈顿距离并返回该距离的值。

在main函数中,我们通过cin输入四个整数,即两个点的横坐标和纵坐标,并将其传递给ManhattanDistance函数进行计算。最后,我们使用cout输出计算结果。

C++是一种非常强大的编程语言,提供了许多内置函数和数据类型,可以用来实现各种算法和计算方式。对于曼哈顿距离的计算,C++提供了abs函数,该函数可以计算两个整数之差的绝对值。因此,我们可以很容易地实现曼哈顿距离的计算,从而方便地进行网格状空间中的距离计算。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复