#include <iostream>
#include<string>;
using namespace std;
class point
{
private:
double x;
double y;
public:
void cinX(double a) {
x = a;
}
double getX() {
double a = x;
return a;
}
void cinY(double b) {
y = b;
}
double getY() {
double a = y;
return a;
}
};
class circle {
private:
double rX;
double rY;
double r;
public:
void cinrX(double a) {
rX = a;
}
double getrX() {
double x = rX;
return x;
}
void cinrY(double a) {
rY = a;
}
double getrY() {
double a = rY;
return a;
}
void cinr(double a) {
r = a;
}
double getr() {
double a = r;
return a;
}
};
double getDistance(point p, circle c) {
double d = sqrt((p.getX() - c.getrX()) * (p.getX() - c.getrX()) + (p.getY() - c.getrY()) * (p.getY() - c.getrY()));
return d;
}
int main()
{
point p1;
p1.cinX(2);
p1.cinY(2);
circle c1;
c1.cinrX(4);
c1.cinrY(5);
c1.cinr(30);
double d = getDistance(p1, c1);
cout << "d = " << d << endl;
if (d > c1.getr())
{
cout << "点在圆外" << endl;
return 0;
}
else {
if (d = c1.getr()) {
cout << "点在圆上" << endl;
return 0;
}
else
cout << "点在圆内" << endl;
}
}
能跑得起来,但是结果不对,所有的“点在圆内”的情况都被算成了“点在圆上”,这是为什么呢?
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- qq_53090785 2023-05-24 09:20关注
点在圆上判断有问题,应该是==
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥15 delphi开发的WEBSERVER改用HTTPS协议
- ¥15 pic16f877A单片机的计数器proteus仿真失效
- ¥100 调查 Vitis AI 中验证 .xmodel 量化后的正确性
- ¥30 codelite全屏时file、setting那一行消失了
- ¥15 gazebo-rviz教程
- ¥15 付费求做一个自助抢单插件
- ¥15 bat批处理,关于数据复制问题
- ¥50 同步两个不同结果的array中某些属性
- ¥15 悬赏15远程操控解决问题
- ¥15 CST复制的模型无法单独修改参数?