C++ 判断点是否在圆的内部
生活随笔
收集整理的這篇文章主要介紹了
C++ 判断点是否在圆的内部
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
點到圓心的距離公式也就是兩點間距離公式:
將類和main文件都寫在一個文件中
將類和main分開成多個文件:
Circle.h文件
#pragma once #include "Point.h"//圓 類 class Circle{public://設置坐標void setXY(int x, int y);//設置半徑void setR(int r);//如果true 代表點在圓的內部bool judgePoint(Point& p);private:int m_x;int m_y;int m_r; };Point.h文件
#pragma onceclass Point{ public://設置一個點的坐標void setXY(int x, int y);int getX();int getY();private:int m_x;int m_y; };Circle.cpp文件
#include "Circle.h"void Circle::setXY(int x, int y) {m_x = x;m_y = y; }//設置半徑 void Circle::setR(int r) {m_r = r; }//如果true 代表點在圓的內部 bool Circle::judgePoint(Point& p) {int dd = (p.getX() - m_x) * (p.getX() - m_x) + (p.getY() - m_y) * (p.getY() - m_y);if (dd > m_r * m_r) {return false;}else {return true;} }Point.cpp文件
#include "Point.h"//設置一個點的坐標 void Point::setXY(int x, int y){m_x = x;m_y = y; }int Point::getX(){return m_x; }int Point::getY(){return m_y; }main.cpp文件
#include <iostream> #include "Circle.h" #include "Point.h"using namespace std;int main(){Circle* circle = new Circle();Point* point = new Point();circle->setXY(2, 2);circle->setR(4);point->setXY(5, 4);if (circle->judgePoint(*point) == true) {cout << "點在圓的內部" << endl;}else {cout << "點在圓的外部" << endl;}delete circle;delete point; }總結
以上是生活随笔為你收集整理的C++ 判断点是否在圆的内部的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C++ 判断两个立方体是否相等
- 下一篇: C++ 析构函数