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. [HTML]常用的文本标签(标题、段落、加粗、下划线等标签)

    标签类型 写法 说明 标题 <h1></h1>......<h6></h6> 加粗.独占一行(块级元素) 段落 <p></p> ...

  2. 一、RabbitMQ 概念详解和应用

    消息队列和同步请求的区别 无论RabbitMQ还是Kafka,本质上都是提供了基于message或事件驱动异步处理业务的能力,相比于http和rpc的直接调用,它有着不可替代的优势: 1. 解耦,解耦 ...

  3. 04 jumpserver资产管理

    4.资产管理: (1)管理用户: 管理用户是资产(被控服务器)上的 root,或拥有 NOPASSWD: ALL sudo 权限的用户, JumpServer 使用该用户来 `推送系统用户`.`获取资 ...

  4. Java反射机制开发经验总结

    我在实际项目当中有经常用到反射机制,故而将学会的反射用法做一些汇总笔记,当做以后复盘所用. 存在这样一个类: package com.example.demo; import com.alibaba. ...

  5. 1.5Java、万维网以及其他

    要点提示:Java是一种功能强大和多用途的编程语言,可用于开发运行在移动设备.台式计算机以及服务器端的软件.

  6. k8s结合jumpserver做kubectl权限控制 用户在多个namespaces的访问权限 rbac权限控制

    圈子太小,做人留一面,日后好相见. 其实这个文章就是用户用jumpserver登录到k8s master节点 然后执行kubectl的时候只有自己namespaces的所有权限. 背景 1,k8s 有 ...

  7. 案例分享:Qt西门子机床人机界面以及数据看板定制(西门子通讯,mysql数据库,生产信息,参数信息,信息化看板,权限控制,播放器,二维图表,参数调试界面)

    若该文为原创文章,转载请注明原文出处本文章博客地址:https://blog.csdn.net/qq21497936/article/details/118685521 长期持续带来更多项目与技术分享 ...

  8. Java:Java的堆区、栈区和方法区详解

    Java内存空间理解 堆:堆主要存放Java在运行过程中new出来的对象,凡是通过new生成的对象都存放在堆中,对于堆中的对象生命周期的管理由Java虚拟机的垃圾回收机制GC进行回收和统一管理.类的非 ...

  9. 传统mvc platform与前后端分离项目smart 共用域名nginx配置

    #server { # listen 80; # server_name 139.129.100.155 rjhaasz.cn; # rewrite ^(.*)$ https://$host$1 pe ...

  10. 使用Hugo框架搭建博客的过程 - 部署

    前言 完成前期的准备工作后,在部署阶段需要配置服务器或对象存储服务. 对象存储和服务器对比 对象存储平台 国内有阿里云OSS.腾讯COS.又拍云.七牛云等.国外有Github Pages.Netlif ...