一、题目链接
http://noi.openjudge.cn/ch0103/16/
二、解题思路
◎ 利用两点间的欧氏距离公式可以计算线段长度;
◎ C++的cmath库提供sqrt函数计算一个数的开平方数,称为开根操作,例如:
→ sqrt(4)得到2;
→ sqrt(1.44)得到1.2;
注意:这里的2并非int类型的整数,实际为double类型的浮点数;
◎ 输入两个端点的横坐标和纵坐标,通过欧氏距离公式计算线段长度。
三、实施步骤
◎ 首先,定义并输入四个double类型的浮点数xa、ya、xb、yb,分别代表A点的横坐标、A点的纵坐标、B点的横坐标、B点的纵坐标;
◎ 其次,定义double类型的浮点数ans,代表A点到B点线段的长度,令ans=sqrt((xa-xb)*(xa-xb)+(ya-yb)*(ya - yb));
◎ 最后,通过格式控制输出语句printf配合"%.3f"格式控制标记,输出ans。
四、C++程序
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
double xa;
double ya;
double xb;
double yb;
cin >> xa;
cin >> ya;
cin >> xb;
cin >> yb;
double ans = sqrt((xa - xb) * (xa - xb) + (ya - yb) * (ya - yb));
printf("%.3f", ans);
return 0;
}