20-类和对象-封装-点和圆的关系

简介: 20-类和对象-封装-点和圆的关系
#include<iostream>
using namespace std;
//点和圆关系案例
//点类
class Point
{
public:
  //设置X坐标
  void setX(int x)
  {
    m_X = x;
  }
  //获取X坐标
  int getX()
  {
    return m_X;
  }
  //设置Y坐标
  void setY(int y)
  {
    m_Y = y;
  }
  //获取Y坐标
  int getY()
  {
    return m_Y;
  }
private:
  int m_X;
  int m_Y;
};
//圆类
class Circle
{
public:
  //设置半径
  void setR(int r)
  {
    m_R = r;
  }
  //获取半径
  int getR()
  {
    return m_R;
  }
  //设置圆心
  void set_Center(Point center)
  {
    m_Center = center;
  }
  //获取圆心
  Point getCenter()
  {
    return m_Center;
  }
private:
  int m_R; //半径
  Point m_Center;//圆心
};
//判断点和圆的关系
void isInCircle(Circle& c, Point& p)
{
  //计算两点之间距离
  int distance =
    (c.getCenter().getX() - p.getX()) * (c.getCenter().getX() - p.getX()) +
    (c.getCenter().getY() - p.getY()) * (c.getCenter().getY() - p.getY());
  //计算半径的平方
  int rDistance = c.getR() * c.getR();
  //判断关系
  if (distance == rDistance)
  {
    cout << "点在圆上" << endl;
  }
  else if (distance > rDistance)
  {
    cout << "点在圆外" << endl;
  }
  else
  {
    cout << "点在圆内" << endl;
  }
}
int main()
{
  //创建圆
  Circle c;
  c.setR(10);
  Point center;
  center.setX(10);
  center.setY(10);
  c.set_Center(center);
  //创建点
  Point p;
  p.setX(10);
  p.setY(12);
  //判断关系
  isInCircle(c, p);
  system("pause");
  return 0;
}


相关文章
|
6月前
|
存储 Cloud Native Linux
C++ 类与对象关系、生成
C++ 类与对象关系、生成
|
4天前
|
设计模式 存储 Java
【类图、类与类的关系、多态】
学习Java面向对象,掌握UML类图绘制,包括14种图形,使用PowerDesigner演示类图创建。理解类与类的关系,如继承、实现、依赖、关联、聚合、组合,以及`instanceof`关键字。学习简单工厂设计模式,实现多态,理解其在面试和设计原则中的重要性。通过实例操作,如String类常用方法、汽车与4S店案例,加深对面向对象概念的理解。最后,探讨面向对象设计原则,如单一职责、开闭原则、里氏替换原则、依赖倒置、接口隔离、迪米特法则和组合/聚合复用原则。
36 1
|
4天前
|
数据安全/隐私保护 C++
C++类与对象【封装】
C++类与对象【封装】
|
8月前
|
9月前
|
安全 Java
面向对象特征一:封装
面向对象特征一:封装
32 0
面向对象特征一:封装
|
10月前
|
uml
类与类的六种关系与UML图
类与类的六种关系与UML图
|
12月前
19-类和对象-封装-立方体类
19-类和对象-封装-立方体类
|
Java 数据安全/隐私保护
14 java面向对象的三大特征【继承、封装、多态】
封装的实现: 实现三部曲: ①私有化,属性 ②提供公共的getXxx()方法 ②提供公共的setXxx()方法
85 0
|
设计模式 数据可视化 uml
【设计模式学习笔记】类图:类与类之间的关系
【设计模式学习笔记】类图:类与类之间的关系
210 0
【设计模式学习笔记】类图:类与类之间的关系