C++ 判断点是否在圆的内部
生活随笔
收集整理的這篇文章主要介紹了
C++ 判断点是否在圆的内部
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
點(diǎn)到圓心的距離公式也就是兩點(diǎn)間距離公式:
將類(lèi)和main文件都寫(xiě)在一個(gè)文件中
將類(lèi)和main分開(kāi)成多個(gè)文件:
Circle.h文件
#pragma once #include "Point.h"//圓 類(lèi) class Circle{public://設(shè)置坐標(biāo)void setXY(int x, int y);//設(shè)置半徑void setR(int r);//如果true 代表點(diǎn)在圓的內(nèi)部bool judgePoint(Point& p);private:int m_x;int m_y;int m_r; };Point.h文件
#pragma onceclass Point{ public://設(shè)置一個(gè)點(diǎn)的坐標(biāo)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; }//設(shè)置半徑 void Circle::setR(int r) {m_r = r; }//如果true 代表點(diǎn)在圓的內(nèi)部 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"//設(shè)置一個(gè)點(diǎn)的坐標(biāo) 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 << "點(diǎn)在圓的內(nèi)部" << endl;}else {cout << "點(diǎn)在圓的外部" << endl;}delete circle;delete point; }總結(jié)
以上是生活随笔為你收集整理的C++ 判断点是否在圆的内部的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: C++ 判断两个立方体是否相等
- 下一篇: C++ 析构函数