1 //点和圆的关系
2 //设计一个圆形类 和一个点类 计算点和圆的关系
3 //点到圆心的距离 == 半径 点在圆上
4 //点到圆心的距离 > 半径 点在圆外
5 //点到圆心的距离 < 半径 点在圆内
6 //点到圆心的距离 获取 ....... (x1 -x2)^2 + (y1-y2)^2 开根号 和半径对比
7 // 计算 可以 两边同时 平方
8 #include <iostream>
9 #include<string>
10 #include"circle.h"
11 #include"point.h"
12
13 using namespace std;
14
15 //点类
16 class Point
17 {
18 public:
19 //设置X
20 void setX(int x)
21 {
22 m_X = x;
23 }
24
25 //获取X
26 int getX()
27 {
28 return m_X;
29 }
30 //设置Y
31 void setY(int y)
32 {
33 m_Y = y;
34 }
35 //获取Y
36 int getY()
37 {
38 return m_Y;
39 }
40
41
42 private:
43
44 int m_X;
45 int m_Y;
46 };
47
48 //圆类
49 class Circle
50 {
51 public:
52 //设置半径
53 void setR(int r)
54 {
55 m_R = r;
56 }
57
58 //获取半径
59
60 int getR()
61 {
62 return m_R;
63 }
64
65 //设置圆心
66 void setCenter(Point center)
67 {
68 m_Center = center;
69 }
70
71 //获取圆心
72 Point getCenter()
73 {
74 return m_Center;
75 }
76
77 private:
78
79 int m_R; //半径
80
81 //在类中可以让另一个类 作为本类种的成员
82 Point m_Center; //圆心
83 };
84
85 //判断点和圆的关系
86
87 void isInCircle(Circle &c, Point &p)
88 {
89 //计算两点之间距离 平方
90 int distance =
91 (c.getCenter().getX() - p.getX()) * (c.getCenter().getX() - p.getX()) +
92 (c.getCenter().getY()- p.getY()) * (c.getCenter().getY() - p.getY());
93
94 //计算半径的平方
95 int rDistance = c.getR() * c.getR();
96
97
98 //判断关系
99
100 if (distance == rDistance)
101 {
102 cout << "点在圆上" << endl;
103 }
104 else if (distance > rDistance)
105 {
106 cout << "点在圆外" << endl;
107 }
108 else
109 {
110 cout << "点在圆内" << endl;
111 }
112
113
114 }
115
116
117 int main()
118 {
119
120 //创建圆
121 Circle c;
122 c.setR(10);
123 Point center;
124 center.setX(10);
125 center.setY(0);
126 c.setCenter(center);
127
128
129
130
131 //创建点
132 Point p;
133 p.setX(10);
134 p.setY(10);
135
136
137 //判断
138 isInCircle(c, p);
139
140
141 }

C++ 1 (只在源文件)//点和圆的关系 //设计一个圆形类 和一个点类 计算点和圆的关系 //点到圆心的距离 == 半径 点在圆上 //点到圆心的距离 > 半径 点在圆外 //点到圆心的距离 < 半径 点在圆内 //点到圆心的距离 获取 ....... (x1 -x2)^2 + (y1-y2)^2 开根号 和半径对比 // 计算 可以 两边同时 平方的更多相关文章

  1. C++ 2(将类分文件) //点和圆的关系 //设计一个圆形类 和一个点类 计算点和圆的关系 //点到圆心的距离 == 半径 点在圆上 //点到圆心的距离 > 半径 点在圆外 //点到圆心的距离 < 半径 点在圆内 //点到圆心的距离 获取 ....... (x1 -x2)^2 + (y1-y2)^2 开根号 和半径对比 // 计算 可以 两边同时 平方

    1 源文件 main.cpp 2 //点和圆的关系 3 //设计一个圆形类 和一个点类 计算点和圆的关系 4 //点到圆心的距离 == 半径 点在圆上 5 //点到圆心的距离 > 半径 点在圆外 ...

  2. A Round Peg in a Ground Hole(判断是否是凸包,点是否在凸包内,圆与多边形的关系)

    Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 4628   Accepted: 1434 Description The D ...

  3. 实验二——以点类 Point 为基类设计圆类 Circle

    学习内容:以点类 Point 为基类设计圆类 Circle 示例代码: package 实验二; import java.util.Scanner; class Point{//父类Point pri ...

  4. 以点类 Point 及平面图形类 Plane 为基础设计圆类 Circle

    学习内容:以点类 Point 及平面图形类 Plane 为基础设计圆类 Circle 代码示例: import java.util.Scanner; class Point2{ private dou ...

  5. 外网zabbix-server使用主动模式监控公司内网windows服务器

    外网zabbix-server使用主动模式监控公司内网windows服务器 1.Zabbix Agent active批量调整客户端为主动模式监控将Template OS Windows模板调整为主动 ...

  6. A Round Peg in a Ground Hole - POJ 1584 (判断凸多边形&判断点在多边形内&判断圆在多边形内)

    题目大意:首先给一个圆的半径和圆心,然后给一个多边形的所有点(多边形按照顺时针或者逆时针给的),求,这个多边形是否是凸多边形,如果是凸多边形在判断这个圆是否在这个凸多边形内.   分析:判断凸多边形可 ...

  7. c++ 判断点和圆位置关系(类的声明和类的实现分开)

    Point.h: #pragma onceclass Point{private: double p_x, p_y;public: void setXY(double x,double y); dou ...

  8. 用shape画内圆外方,形成一个圆形头像

    很多人都有过这样的经历,想要在自己写的程序里,上传一张随便大小形状的照片在程序里显示都是圆形照片,或者是方形,或者是三角形,但是写代码又非常麻烦,这里就有一个也可以实现一样效果的方法,那就是用 lay ...

  9. 个人永久性免费-Excel催化剂功能第102波-批量上传本地图片至网络图床(外网可访问)

    自我突破,在100+功能后,再做有质量的功能,非常不易,相对录制视频这些轻松活,还是按捺不住去写代码,此功能虽小,但功课也做了不少,希望对真正有需要的群体带来一些惊喜. 背景介绍 图床的使用,一般是写 ...

随机推荐

  1. Redis之集群

    Redis Cluster是 Redis的分布式解决方案,在3.0版本正式推出,有效地解决了Redis分布式方面的需求.当遇到单机内存.并发.流量等瓶颈时,可以采用Cluster架构方案达到负载均衡的 ...

  2. Oracle数据库——Mybatis在一个update标签下执行多更新语句

    begin update table table1 set com1 ='1' ; update table table2 set com1 ='1' ; end;

  3. AD设计中地铜突然消失且无法选中删除的解决办法

    作者:struct_mooc 博客地址: https://www.cnblogs.com/structmooc/p/14984466.html   前几天在设计一块电路板的时候,已经全部设计完了!但是 ...

  4. 从零玩转人脸识别之RGB人脸活体检测

    从零玩转RGB人脸活体检测 前言 本期教程人脸识别第三方平台为虹软科技,本文章讲解的是人脸识别RGB活体追踪技术,免费的功能很多可以自行搭配,希望在你看完本章课程有所收获. ArcFace 离线SDK ...

  5. 剑指 Offer 12. 矩阵中的路径

    题目描述 是一道很常见的深搜题目,不过里面要考虑一些边界问题,比如走过的路径是不能再次走入的,所以我这里我自己的 代码想到是利用一个新的二维的数组,记录走过的路径,不过题解的直接将原二维数组中的路径隐 ...

  6. Spring Ioc和依赖注入

    总结一下近来几天的学习,做个笔记 以下是Spring IoC相关内容: IoC(Inversion of Control):控制反转: 其主要功能可简单概述为:将 用 new 去创建实例对象,转换为让 ...

  7. 什么是 Acunetix 目标知识库

    随着Acunetix 的最新更新,我们引入了一个称为目标知识库的新功能.每次扫描目标时,Acunetix 都会收集并存储有关它的信息.此信息包括构成站点结构的路径.表单的位置及其输入.Web 应用程序 ...

  8. 题解 AtCoder Beginner Contest 168

    小兔的话 欢迎大家在评论区留言哦~ AtCoder Beginner Contest 168 A - ∴ (Therefore) B - ... (Triple Dots) C - : (Colon) ...

  9. 『心善渊』Selenium3.0基础 — 30、UI自动化测试之POM设计模式

    目录 (一)POM模式介绍 1.什么是POM介绍 2.为什么要使用POM模式 3.POM的优势 4.POM模式封装思路 (1)POM模式将页面分成三层 (2)POM模式的核心要素(重点) (3)总结 ...

  10. Java | Random 和 Math 的概述及使用

    Random Random类是java.util的包里面提供的我们常用的API,方便我们操作的,还有非常多像Random一样的类. Random的作用 生成一个随机数字,可以指定范围,也可以真的随机. ...