判断四个点是否能形成正方形
先贴上模板代码
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
判断四个点是否能形成正方形相关推荐
- 判断四个点是否能构成正方形
代码: #include<iostream> #include<algorithm> #include<cmath> using namespace std;str ...
- c语言判断四个坐标点正方形,四个坐标点判断是否为正方形
四个坐标点判断是否为正方形 在做ACM题目的时候,遇到了要求输入四个点的坐标,然后判断这四个点能否构成一个正方形.这个看似很简单,但细节方面还是有许多问题的.我想的方法很容易理解,而且一次就AC了. ...
- 判断四个点是不是组成正方形
判断四个点是不是组成正方形 给出几组数,每组的第一行为横坐标,第二行为纵坐标.看其是否组成正方形 代码 #coding=utf-8 import sys if __name__ == "__ ...
- C++判断四个点能否构成正方形
参考博客https://blog.csdn.net/yangkunpengD/article/details/51329115 对其进行了修改,思路大致一样. 判断方法:三个条件同时满足(1:四条边相 ...
- c语言长和宽判断是否是正方形,C++ 如何判断四个点是否构成正方形
判断方法分为两步: 1.判断四条边是否相等: 2.判断是否有一个角为直角: 求解两点之前距离的函数: double Distance(int x1,int y1,int x2,int y2){ ret ...
- [编程]C++判断四个点能否构成正方形
方法一: 判断方法:三个条件同时满足(1:四条边相等,2:边不为0,3:有一个直角) https://blog.csdn.net/qq_29567701/article/details/7967673 ...
- C++判断四个点能否构成正方形/矩阵
判断正方形方法:三个条件同时满足(1:四条边相等,2:边不为0,3:有一个直角) 判断矩形的话就是条件1变为有2对边相等 #include<iostream> #include<al ...
- java enum判断_Java Enum枚举 遍历判断 四种方式(包括 Lambda 表达式过滤)
packagecom.miracle.luna.lambda;importjava.util.Arrays;/*** @Author Miracle Luna * @Date 2019/6/9 23: ...
- java通过减治法判断四个数能否生成24点问题
思路: 一开始我们随机生成四个数字A.B.C.D,选择其中任意一个数字,暂记为A: 将A和B.C.D进行加减乘除运算,并把结果存储起来: 由于每次都是选择的两张牌,并且最后运算出的结果都是一张牌,所以 ...
最新文章
- 你可能会错过的3个重要AI趋势
- mysql数据库性能指标结果_MySQL数据库性能优化的关键参数(转)
- 点餐小程序源码_微信小程序餐饮点餐商城前端模版
- XX证券 机器学习平台使用情况访谈总结
- 矩池云上出现Could not find conda environment
- 10.1综合强化刷题 Day1 morning
- xampp中apache点击启动失败解决方法
- 计算机没考好的检讨书300百以上,考试没考好的万能检讨书300字(精选5篇)
- oracle 常用语句2
- linux 异步信号的同步处理方式
- [Sturts2]继承ActionSupport类
- linux中完全卸载oracle,Linux 完整卸载oracle和grid软件
- PJzhang:左耳朵耗子-陈皓
- 大三暑假前端实习日志
- 【无人驾驶系列一】激光雷达(LiDAR)在无人驾驶技术中的应用
- 用神经网络实现手写数字识别
- ligerui的使用心得
- SpringSecurity框架用法简介
- 理解opencv读取图片后的格式,理解图片矩阵的储存方式
- java毕业生设计医院设备管理系统计算机源码+系统+mysql+调试部署+lw