先贴上模板代码

struct node{double x,y;
};
double getdis(node a,node b){return sqrt((a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y));
}
bool isequal(double x,double y){if(x-y>=-1e-8&&x-y<=1e-8)return true;return false;
}
bool isSquare(node a,node b,node c,node d){double len[6];len[0]=getdis(a,b);len[1]=getdis(a,c);len[2]=getdis(a,d);len[3]=getdis(b,c);len[4]=getdis(b,d);len[5]=getdis(c,d);double len1=len[0];double len2=len[0];for(int i=1;i<6;++i){if(!isequal(len[i],len2)&&!isequal(len[i],len1))len2=len[i];}for(int i=0;i<6;++i){if(isequal(len[i],len2)||isequal(len[i],len1));else return false;}if(len2-len1<-1e-8)swap(len1,len2);if(!isequal(2*len1*len1,len2*len2))return false;return true;
}

来源:http://blog.csdn.net/mengxingyuanlove/article/details/47373261

判断四个点是否能形成正方形相关推荐

  1. 判断四个点是否能构成正方形

    代码: #include<iostream> #include<algorithm> #include<cmath> using namespace std;str ...

  2. c语言判断四个坐标点正方形,四个坐标点判断是否为正方形

    四个坐标点判断是否为正方形 在做ACM题目的时候,遇到了要求输入四个点的坐标,然后判断这四个点能否构成一个正方形.这个看似很简单,但细节方面还是有许多问题的.我想的方法很容易理解,而且一次就AC了. ...

  3. 判断四个点是不是组成正方形

    判断四个点是不是组成正方形 给出几组数,每组的第一行为横坐标,第二行为纵坐标.看其是否组成正方形 代码 #coding=utf-8 import sys if __name__ == "__ ...

  4. C++判断四个点能否构成正方形

    参考博客https://blog.csdn.net/yangkunpengD/article/details/51329115 对其进行了修改,思路大致一样. 判断方法:三个条件同时满足(1:四条边相 ...

  5. c语言长和宽判断是否是正方形,C++ 如何判断四个点是否构成正方形

    判断方法分为两步: 1.判断四条边是否相等: 2.判断是否有一个角为直角: 求解两点之前距离的函数: double Distance(int x1,int y1,int x2,int y2){ ret ...

  6. [编程]C++判断四个点能否构成正方形

    方法一: 判断方法:三个条件同时满足(1:四条边相等,2:边不为0,3:有一个直角) https://blog.csdn.net/qq_29567701/article/details/7967673 ...

  7. C++判断四个点能否构成正方形/矩阵

    判断正方形方法:三个条件同时满足(1:四条边相等,2:边不为0,3:有一个直角) 判断矩形的话就是条件1变为有2对边相等 #include<iostream> #include<al ...

  8. java enum判断_Java Enum枚举 遍历判断 四种方式(包括 Lambda 表达式过滤)

    packagecom.miracle.luna.lambda;importjava.util.Arrays;/*** @Author Miracle Luna * @Date 2019/6/9 23: ...

  9. java通过减治法判断四个数能否生成24点问题

    思路: 一开始我们随机生成四个数字A.B.C.D,选择其中任意一个数字,暂记为A: 将A和B.C.D进行加减乘除运算,并把结果存储起来: 由于每次都是选择的两张牌,并且最后运算出的结果都是一张牌,所以 ...

最新文章

  1. 你可能会错过的3个重要AI趋势
  2. mysql数据库性能指标结果_MySQL数据库性能优化的关键参数(转)
  3. 点餐小程序源码_微信小程序餐饮点餐商城前端模版
  4. XX证券 机器学习平台使用情况访谈总结
  5. 矩池云上出现Could not find conda environment
  6. 10.1综合强化刷题 Day1 morning
  7. xampp中apache点击启动失败解决方法
  8. 计算机没考好的检讨书300百以上,考试没考好的万能检讨书300字(精选5篇)
  9. oracle 常用语句2
  10. linux 异步信号的同步处理方式
  11. [Sturts2]继承ActionSupport类
  12. linux中完全卸载oracle,Linux 完整卸载oracle和grid软件
  13. PJzhang:左耳朵耗子-陈皓
  14. 大三暑假前端实习日志
  15. 【无人驾驶系列一】激光雷达(LiDAR)在无人驾驶技术中的应用
  16. 用神经网络实现手写数字识别
  17. ligerui的使用心得
  18. SpringSecurity框架用法简介
  19. 理解opencv读取图片后的格式,理解图片矩阵的储存方式
  20. java毕业生设计医院设备管理系统计算机源码+系统+mysql+调试部署+lw

热门文章

  1. 学习python的第七天 Day7,对文件的操作
  2. Adobe Bridge CC资源管理软件使用方法
  3. android opengl版本,安卓模拟器无法安装系统opengl版本过低的通用解决方法
  4. 实验三 LZW编解码算法实现与分析
  5. 618挑选网络电视盒子哪个好?发烧友整理目前最强的电视盒子
  6. 学习NLP的第20天——基于信息熵和互信息的新词提取实现
  7. QT软件开发-基于FFMPEG设计视频播放器-软解图像(一)
  8. 小书童-凯撒密码(洛谷P1914题题解,Java语言描述)
  9. Element UI 中文英文混合字符长度校验
  10. ros 机械臂复位_松下机械手原点调整方法