最远距离(C++实现)
来源:互联网 发布:mac的鼠标不能按右键 编辑:程序博客网 时间:2024/05/17 18:17
最远距离(C++实现)
给定一组点(x,y),求距离最远的两个点之间的距离。
输入
第一行是点数n(n大于等于2),接着每一行代表一个点,由两个浮点数x,y组成。
输出
输出一行是最远两点之间的距离。
样例输出
6 34.0 23.028.1 21.614.7 17.117.0 27.234.7 67.129.3 65.1
样例输出
53.8516
参考程序
//Data:7/18/2017//Writen by Yuxin Liu#include <iostream>#include <iomanip>using namespace std;double dis(double (*)[2], double (*)[2]);//函数声明,计算每两个点的距离int main(){ int n; cin >> n; double a[10][2];//二维数组的形式存储坐标点 double result[50];//存储任意两点之间的距离 //输入 for (int i = 0; i < n; i++) { for (int j = 0; j < 2; j++) { cin >> a[i][j]; } } //同时将每个坐标点的x,y值,以地址的形式传递给p和q double (*p)[2]; p= &a[0]; double (*q)[2]; q= &a[0]; //遍历每个坐标点,求距离 for (int i = 0; i < n; i++) { for (int j = 0; j< n; j++) { result[i*n+j] = dis(p,q); q = q + 1; } p = p + 1; q = &a[0]; } //判断最大值,并输出 double max = 0; for (int i = 0; i < n; i++) { for (int j = 0; j < n; j++) { cout << fixed << setprecision(4) << result[i*n + j] << endl; if (result[i*n + j]>max) max = result[i*n + j]; } } cout << fixed << setprecision(4) << max << endl; return 0;}//两点之间距离函数的定义double dis(double (*b)[2], double (*c)[2]){ double distance = 0; distance = sqrt((b[0][0] - c[0][0])*(b[0][0] - c[0][0]) + (b[0][1] - c[0][1])*(b[0][1] - c[0][1])); return distance;}
阅读全文
1 0
- 最远距离(C++实现)
- 最远距离
- 最远距离
- 最远距离
- 最远距离
- 最远距离
- 世界上最远的距离(转载)
- 树的直径(最远距离)
- 「递归逻辑实现」求一棵树中的最远距离
- 世界上最远的距离
- 世界上最远的距离
- 《世界上最远的距离》
- 世界上最远的距离
- 世界上最远的距离
- 世界上最远的距离
- 世界上最远的距离
- 世界上最远的距离
- 世界上最远的距离
- 8 皇帝问题(皇帝还是比较牛逼)
- MathJax基础(8):连续分式
- opencv python 图片腐蚀和膨胀
- c语言中,关于延迟函数的理解
- Python学习笔记(5)文件&异常
- 最远距离(C++实现)
- java设计模式之组合模式
- BZOJ 1029-建筑抢修(贪心)
- 如何才能不断成长杂谈
- 【linux】:模拟实现sleep函数
- ajax提交如何监听“enter”“手机键盘确定”事件
- c/c++整理--c++继承
- 交互软件的登录界面
- <划重点的Unity2017> 人物相关的物理系统组件详述