Hello!大家好,今天讲讲求两点之间的距离。
已知点A的坐标为(x1,y1),点B的坐标为(x2,y2),求两点之间的直线距离。
首先,我先讲明,要解决这个问题,需要用到勾股定理,没学过的小伙伴们先去学一下哈!
【数学】勾股定理https://blog.csdn.net/yangyanbin_sam/article/details/138959059?spm=1001.2014.3001.5501为什么跟勾股定理有关呢?
这时你可能还看不出什么端倪,接着看。
直角三角形就可以用勾股定理。
这个直角三角形的斜边就是两点之间的距离!
AC=3-0=3,BC=7-3=4,3×3+4×4=5×5,得出AB=5。
由此可得一条公式:
点A的坐标为(x1,y1),点B的坐标为(x2,y2),A、B之间的距离=
注意是大数减小数。
既然公式有了,那打个代码轻轻松松。
#include <bits/stdc++.h>
using namespace std;
int X1,X2,Y1,Y2;
int main()
{
cin>>X1>>Y1;
cin>>X2>>Y2;
cout<<sqrt((max(X1,X2)-min(X1,X2))*(max(X1,X2)-min(X1,X2))+(max(Y1,Y2)-min(Y1,Y2))*(max(Y1,Y2)-min(Y1,Y2)));
return 0;
}
(有点长,可以分开成几个变量来写)
这个公式放在scratch可能比较常用。
这算是比较简单易懂的了,你听懂了吗?小伙伴们,今天就讲到这,拜拜!