C++:友元1(两点之间的距离)
时间限制(普通/Java):1000MS/3000MS 运行内存限制:65536KByte
总提交:674 测试通过:457

描述

定义一个二维平面中的点(point)类,类中的数据成员为点的坐标,然后定义友元函数dist()用来计算两点之间的距离。

将下面的程序1 和程序2填写完整。

程序1 :

#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
……………………………………
……………………………………
……………………………………
int main()
{
int n;
double x1,x2,y1,y2;
cin>>n;
while (n--)
{
cin>>x1>>y1>>x2>>y2;
point p1(x1,y1),p2(x2,y2);
cout<<fixed<<setprecision(3)<<dist(p1,p2)<<endl;
}
return 0;
}

程序2:

#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
……………………………………
……………………………………
……………………………………
int main()
{ int n; double x1,x2,y1,y2; test t;
cin>>n;
while (n--)
{ cin>>x1>>y1>>x2>>y2;
point p1(x1,y1),p2(x2,y2);
cout<<fixed<<setprecision(3)<<t.dist(p1,p2)<<endl;
}
}

输入

输入包含n组测试例, 第1行是测试组数。

第2行--第n+1行为测试数据,每组测数据有4个实数,表示 2个点的坐标(x1,y1)和(x2,y2)。

输出

两点之间的距离(保留3位小数)。

样例输入

2
0 0 3 4
1 1 2 2

样例输出

5.000
1.414

#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
double distance(int x1,int y1,int x2,int y2)
{
double s;
s=sqrt((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1));
return s;
}
int main()
{
int x1,x2,y1,y2,n;
double s;
cin>>n;
while(n--)
{
cin>>x1>>y1>>x2>>y2;
s=distance(x1,y1,x2,y2);
cout<<setiosflags(ios::fixed)<<setprecision(3)<<s<<endl;
}
return 0;
}

#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;

class point
{
double x,y;
friend double dist(point, point);
public:
point(double xx, double yy) {x=xx;y=yy;}
};

double dist(point p1,point p2)
{
return sqrt((p1.x-p2.x)*(p1.x-p2.x)+(p1.y-p2.y)*(p1.y-p2.y));
}

int main()
{
int n;
double x1,x2,y1,y2;
cin>>n;
while (n--)
{
cin>>x1>>y1>>x2>>y2;
point p1(x1,y1),p2(x2,y2);
cout<<fixed<<setprecision(3)<<dist(p1,p2)<<endl;
}
return 0;
}

#include <iostream.h>
#include <iomanip.h>
#include <math.h>

class point
{
double x,y;
friend double distance(point, point);
public:
point(double xx, double yy) {x=xx;y=yy;}
};

double distance(point p1,point p2)
{
return sqrt((p1.x-p2.x)*(p1.x-p2.x)+(p1.y-p2.y)*(p1.y-p2.y));
}

int main()
{
int n;
double x1,x2,y1,y2;
cin>>n;
while (n--)
{
cin>>x1>>y1>>x2>>y2;
point p1(x1,y1),p2(x2,y2);
cout<<fixed<<setprecision(3)<<distance(p1,p2)<<endl;
}
return 0;
}

#include <iostream.h>
#include <iomanip.h>
#include <math.h>

class point
{
double x,y;

public:
double distance(point p)
{ return sqrt((x-p.x)*(x-p.x)+(y-p.y)*(y-p.y)); }

point(double xx, double yy) {x=xx;y=yy;}
};

int main()
{
int n;
double x1,x2,y1,y2;
cin>>n;
while (n--)
{
cin>>x1>>y1>>x2>>y2;
point p1(x1,y1),p2(x2,y2);
cout<<fixed<<setprecision(3)<<p1.distance(p2)<<endl;
}
return 0;
}

转载于:https://www.cnblogs.com/2014acm/p/3911225.html

rwkj 1359 友元:两点距离相关推荐

  1. 用android studio测量距离,Android studio 百度地图开发(6)Marker绑定事件、计算两点距离...

    Android studio 百度地图开发(6)Marker绑定事件.计算两点距离 email:chentravelling@163.com 开发环境:win7 64位,Android Studio, ...

  2. Java黑皮书课后题第2章:2.15(几何:两点间距离)编写程序,提示用户输入两个点(x1,y1)和(x2,y2),显示两点距离

    @TOC 题目 题目描述 2.15(几何:两点间距离)编写程序,提示用户输入两个点(x1,y1)和(x2,y2),显示两点距离 其它提示:计算两点之间距离公式可以用Math.pow(a, 0.5)计算 ...

  3. oracle 经纬度算距离,根据经纬度诀别用java和Oracle存储过程计算两点距离

    根据经纬度分别用java和Oracle存储过程计算两点距离 create or replace procedure SP_GET_DISTANCE (cx in number,cy in number ...

  4. turf:计算面积、折线长度和两点距离

    一.面积 官网 API // 面积计算 var polygon = turf.polygon([[[116.24616622924805, 40.0312614440918],[116.2368965 ...

  5. django经度纬度计算两点距离实例及微信商家付款给用户接口实例

    长路漫漫,未知作伴. python 根据经度纬度计算两点距离 小数点保留位数 base加时间戳加密 十六进制数字转十进制字符串 微信获取用户openid 云通讯发送短信接口 django 微信小程序提 ...

  6. postgresql计算两点距离

    postgresql计算两点距离 下面两种方法: select ST_Distance(ST_SetSRID(ST_MakePoint(115.97166453999147,28.7164939142 ...

  7. js 根据百度地图提供经纬度计算两点距离

    正常在使用百度地图时,我们可以通过BMap的实例对象提供的方法计算距离: var map = new BMap.Map('map_canvas'); map.getDistance(point1 ,p ...

  8. C++ Point类求两点距离

    #include<iostream> #include<math.h> using namespace std;class Point{ private: double X,Y ...

  9. 球坐标系下的两点距离公式

    https://blog.csdn.net/yu412346928/article/details/42966001 已知两点经纬度计算球面距离的公式,一搜一大堆,形式如下: 可是至于这个公式为什么是 ...

最新文章

  1. 19、HTML5 新的 Input 类型
  2. PHP Warning: date(): It is not safe to rely on the system's timezone settings
  3. oracle 格式化报表输出,perl的格式化(Format)报表输出实现代码
  4. [NOI2001]食物链
  5. ADB server didn't ACK的解决方法
  6. java如何造假数据_JAVA时间数据造假
  7. 给nodejs应用的package.json添加Redis服务的依赖
  8. 宁波镇海2021年高考成绩查询,最新!2021年,宁波镇海区的这14所中小学“爆了...
  9. 执行dos命令,不出现黑色的dos窗口
  10. 表示探索、探究的几个词
  11. php iframe js加载不上,js iframe的onload事件不去作用的原因及解决办法
  12. 关于代码控制管理的一些想法
  13. Python Tricks(十四)—— list 逆序的实现
  14. 生产调度系统算法模型简要设计
  15. 怎么批量给文件夹名称加上数字序号前缀?怎么对文件夹名称进行编号排序?
  16. 阿里 P7 到底该具备什么样的能力?
  17. 量化投资--技术篇(4) 投资组合策略
  18. iOS证书(p12)获取解密公私钥
  19. CentOS 7 安装rar解压rar
  20. java点到直线距离_求取点到直线的距离

热门文章

  1. 【tomcat】catalina.home catalina.base 区别
  2. Eclipse中java文件编码格式修改
  3. kafaka生产者消费者demo(简易上手demo)
  4. java com dll_通过COM组件方式实现java调用C#写的DLL文件
  5. java 字符串赋值_灵魂拷问:为什么 Java 字符串是不可变的?
  6. c语言 在线oj系统,开源的在线评测系统——Vakuum
  7. 厦门one_“断轴”频发,李想承认理想ONE存缺陷!曾声明悬架非常安全
  8. conda切换环境_Python多环境管理,你需要知道的几种方法
  9. java 使用maven 打包 添加本地lib包
  10. 机器学习系列(一)感知器分类算法