输入五个点float型输出哪两个点间的距离最近。
我们可以先计算出这五个点中任意两个点之间的距离,然后找出距离最近的两个点即可。
以下是一个 Python 的实现:
import math
def distance(x1, y1, x2, y2):
# 计算两点之间的距离
return math.sqrt((x2-x1)**2 + (y2-y1)**2)
# 输入五个点
points = []
for i in range(5):
x, y = map(float, input().split())
points.append((x, y))
# 计算任意两点之间的距离
distances = []
for i in range(5):
for j in range(i+1, 5):
dist = distance(points[i][0], points[i][1], points[j][0], points[j][1])
distances.append((i, j, dist))
# 找出距离最近的两个点
min_dist = float('inf')
for i, j, dist in distances:
if dist < min_dist:
min_dist = dist
p1, p2 = i, j
# 输出结果
print("距离最近的两个点为:({}, {}) 和 ({}, {}),距离为 {:.2f}".format(points[p1][0], points[p1][1], points[p2][0], points[p2][1], min_dist))
示例输入:
0 0
1 1
2 2
3 3
4 4
输出:
距离最近的两个点为:(0.0, 0.0) 和 (1.0, 1.0),距离为 1.41
``
原文地址: https://www.cveoy.top/t/topic/f3Vf 著作权归作者所有。请勿转载和采集!