C程序求两点之间的欧几里得距离
给定四个整数x1, y1, x2和y2 ,分别表示二维图的两个坐标(x1, y1) 和 (x2, y2) 。任务是找出这两点之间的欧几里得距离。
Euclidean distance between two points is the length of a straight line drawn between those two given points.
例子:
Input: x1, y1 = (3, 4)
x2, y2 = (7, 7)
Output: 5
Input: x1, y1 = (3, 4)
x2, y2 = (4, 3)
Output: 1.41421
方法:由于欧几里得距离不过是两个给定点之间的直线距离,因此可以使用勾股定理导出的距离公式。两点 (x1, y1) 和 (x2, y2) 之间的距离公式为
我们可以通过简单地应用毕达哥拉斯定理得到上述公式
下面是上述方法的实现
C
// C program for the above approach
#include
#include
// Function to calculate distance
float distance(int x1, int y1, int x2, int y2)
{
// Calculating distance
return sqrt(pow(x2 - x1, 2)
+ pow(y2 - y1, 2) * 1.0);
}
// Driver Code
int main()
{
printf("%.2f", distance(3, 4, 4, 3));
return 0;
}
输出
1.41
时间复杂度: O(1)
辅助空间: O(1)