判断点圆关系 (30 分)
判断点圆关系 (30 分)
输入平面上的一个点的坐标,以及一个圆的圆心坐标和半径,输出该点到原点的距离,并判断该点在圆内,圆外还是在圆周上。
在圆外时,将输出“outside",在圆内时,输出"inside",在圆周上时,输出“on"。
下面已经给出了点类Point的部分定义,请将其函数定义补充完整,并添加对圆类Circle的完整定义。
输入格式说明:
格式如下:
点的x坐标 点的y坐标 圆心的x坐标 圆心的y坐标 圆的半径
输入样例:
在一行中给出点坐标和圆心坐标及半径:
2 3 1 1 3
输出样例:
在这里给出相应的输出。例如:
3.61 inside
#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;
class Point {
private:double x, y;
public:Point();Point(double x_, double y_);double distance();double distance(const Point& p);double getX() { return x; }double getY() { return y; }void setX(double x_);void setY(double y_);
};
Point::Point() { double x = 0; double y = 0; }
Point::Point(double x_, double y_)
{this->x = x_; this->y = y_;
}
double Point::distance() {return sqrt(this->x * this->x + this->y * this->y);
}
double Point::distance(const Point& p)
{return sqrt((this->x - p.x) * (this->x - p.x) + (this->y - p.y) * (this->y - p.y));
}
void Point::setX(double x_)
{cout << this->x << endl;
}
void Point::setY(double y_)
{cout << this->y << endl;
}
class Circle
{
private:Point p1;double r;
public:Circle(Point& p ,double r):p1(p){this->r = r;}string judge(Point &p){if (p.distance(p) > r)return "outside" ;else if (p.distance(p) == r)return "on";elsereturn "inside" ;}
};int main() {double x1, y1, x2, y2, r;cin >> x1 >> y1 >> x2 >> y2 >> r;Point p(x1, y1);Point ctr(x2, y2);Circle c(ctr, r);cout << setprecision(3) << p.distance() << " " << c.judge(p) << endl;
}
判断点圆关系 (30 分)相关推荐
- PAT甲级1135 Is It A Red-Black Tree (30分):[C++题解]判断红黑树
文章目录 题目分析 题目链接 题目分析 分析 给定前序遍历,同时红黑树一定是二叉搜索树,所以它的中序遍历就是从小到大排序.因此这道题是给定了前序遍历和中序遍历让建立二叉搜索树(BST). 数据结构中有 ...
- 【CCCC】L3-018 森森美图 (30分),计算几何+判断三点共线+bfs最短路
problem L3-018 森森美图 (30分) 森森最近想让自己的朋友圈熠熠生辉,所以他决定自己写个美化照片的软件,并起名为森森美图.众所周知,在合照中美化自己的面部而不美化合照者的面部是让自己占 ...
- 【CCCC】L3-010 是否完全二叉搜索树 (30分),完全二叉树判断+层次遍历(奇怪的方法)
problem L3-010 是否完全二叉搜索树 (30分) 将一系列给定数字顺序插入一个初始为空的二叉搜索树(定义为左子树键值大,右子树键值小),你需要判断最后的树是否一棵完全二叉树,并且给出其层序 ...
- PAT甲级1155 Heap Paths (30 分):[C++题解]堆、堆的遍历、树的遍历、dfs输出路径、完全二叉树建树
文章目录 题目分析 题目链接 题目分析 来源:acwing 分析: 堆首先是完全二叉树,所以先建完全二叉树,由于给定的是层序遍历的数据,所以直接用数组即可,注意数组下标从1开始,这样便满足结点u和左儿 ...
- 7-2 银行家算法--申请资源 (30 分)
7-2 银行家算法–申请资源 (30 分)(思路+详解)Come 乖宝宝们 一:前言 这道题需要用到前面的一道题 安全性检查 算法知识,所以强烈建议先看前面那道题 7-1 银行家算法–安全性检查 (2 ...
- 【CCCC】L3-025 那就别担心了 (30分),dfs搜索起点到终点的路径条数。
problem L3-025 那就别担心了 (30分) 下图转自"英式没品笑话百科"的新浪微博 -- 所以无论有没有遇到难题,其实都不用担心. ziqia.jpg 博主将这种逻辑推 ...
- 【CCCC】L3-016 二叉搜索树的结构 (30分),,手动建堆(二叉搜索树节点询问),map写法
problem L3-016 二叉搜索树的结构 (30分) 二叉搜索树或者是一棵空树,或者是具有下列性质的二叉树: 若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值:若它的右子树不空,则右 ...
- **06-图3 六度空间 (30 分)**
06-图3 六度空间 (30 分) "六度空间"理论又称作"六度分隔(Six Degrees of Separation)"理论.这个理论可以通俗地阐述为:&q ...
- 集美大学c语言大作业,2019年集美大学硕士研究生考试初试自命题考试大纲C语言程序设计函数程序设计,20%(30分)...
类似问题答案 2019年集美大学硕士研究生考试初试自命题考试大纲C语言程序设计循环结构程序设计,... (三)循环结构程序设计,10% (15分) 考试内容:for循环.while循环.dowhile ...
最新文章
- Uber提出损失变化分配方法LCA,揭秘神经网络“黑盒”
- python自学路线-各个阶段的python学习路线?
- androidSDK配置环境变量
- C++98C++11的区别
- 前端学习(1418):服务器响应的数据格式
- 有关分库分表你想知道的,都在这儿了
- C++函数指针和类成员函数指针
- linux命令里的xz是干嘛的,linux xz命令详解
- Log4j和Slf4j的比较
- .mmap文件用什么软件可以打开?
- 电脑小写字母怎么切换_WPS“文档”——大小写字母快速转换
- mro python_Python-MRO
- 计算机无法连接网络打印机,网络打印机无法连接的解决方法是什么
- U8-存货结存数量与序列号可用数量不一致
- BUUCTF(web刷题记录一)
- 解决鼠标滚动时页面上下跳动的问题
- 如何同时训练左手灵活性和音阶思维
- linux module load, show, 包管理,找到包的路径
- 2021 Macbook Pro 14 频繁问题回答
- 谁的青春不似梦,谁的梦里不青春
热门文章
- ajax调用ashx页面内的方法
- 浅析电容式触摸感应原理与类型
- npm全局安装和本地安装及卸载
- Retrofit 2.0 超能实践(三),轻松实现多文件/图片上传/Json字符串/表单
- 深度linux夜间模式,更新Deepin 15.9.3系统后无法自动调节色温的解决方法
- 组合数学(洛谷P5148)
- L2TP协议及AVP
- Android Bluetooth蓝牙开发\蓝牙协议\蓝牙通信例子_Android支持蓝牙4.0版本_BLE开发
- 安卓蓝牙开发的几个版本区别
- Tecohoo VD-206S 全高清视频会议摄像机