6-8 判断一个点是否在一个圆的内部 分数 20 全屏浏览题目 切换布局 作者 杨军 单位 四川师范大学 创建一个表示点的类Point,运用组合的方式创建圆形类。 圆形有个成员函数isPointIn用于判断一个点是否在该圆形的内部。 完成对应类代码,使得主函数可以正确运行。 注意类的数值型数据成员类型为浮点型。 裁判测试程序样例: /* 请在这里填写答案 */ int main(int argc, char const *argv[]) { double x,y; double r; cin>>x>>y>>r; Point p(x,y); Circle c(p,r); cin>>x>>y; Point p1(x,y); bool b = c.isPointIn(p1); cout<<b<<endl; } 输入样例: 在这里给出一组输入。例如: 1 1 1.5 2 2 输出样例: 在这里给出相应的输出。例如: 1 代码长度限制 16 KB 时间限制 400 ms 内存限制 64 MB
时间: 2023-06-20 10:10:07 浏览: 200
#include <iostream>
#include <cmath>
using namespace std;
class Point {
private:
double x;
double y;
public:
Point(double xx, double yy) {
x = xx;
y = yy;
}
double getX() {
return x;
}
double getY() {
return y;
}
};
class Circle {
private:
Point center;
double radius;
public:
Circle(Point c, double r) {
center = c;
radius = r;
}
bool isPointIn(Point p) {
double distance = sqrt(pow(p.getX()-center.getX(),2) + pow(p.getY()-center.getY(),2));
if (distance <= radius) {
return true;
}
else {
return false;
}
}
};
int main(int argc, char const *argv[]) {
double x,y;
double r;
cin>>x>>y>>r;
Point p(x,y);
Circle c(p,r);
cin>>x>>y;
Point p1(x,y);
bool b = c.isPointIn(p1);
cout<<b<<endl;
return 0;
}
阅读全文