用c语言编写一程序求任意一点(x0,y0)到直线2x-y+10=0的距离。
答案:1 悬赏:0 手机版
解决时间 2021-03-02 11:13
- 提问者网友:动次大次蹦擦擦
- 2021-03-02 01:26
用c语言编写一程序求任意一点(x0,y0)到直线2x-y+10=0的距离。
最佳答案
- 五星知识达人网友:洒脱疯子
- 2021-03-02 02:43
Ax+By+C=0坐标(Xo,Yo),,那么这点到这直线的距离就为:
│AXo+BYo+C│/√(A²+B²)
#include
#include
double getDis(double x0, double y0)
{
double y = 2*x0-y0+10;
if (y < 0)y = -y;
return y / sqrt(5.0);
}
int main( )
{
double x0, y0;
scanf ("%lf%lf", &x0, &y0);
double dis = getDis(x0, y0);
printf ("%f
", dis);
return 0;
}追问if (y < 0)y = -y;这句是什么意思?追答就是如果y是负数,就把y取他的相反数,变成整数,达到取绝对值的效果追问能解释一下为什么运行结果有那么多位吗?
追答亲,自己输入两个数字,不需要括号和逗号追问哦哦,成功了,谢谢大神
│AXo+BYo+C│/√(A²+B²)
#include
#include
double getDis(double x0, double y0)
{
double y = 2*x0-y0+10;
if (y < 0)y = -y;
return y / sqrt(5.0);
}
int main( )
{
double x0, y0;
scanf ("%lf%lf", &x0, &y0);
double dis = getDis(x0, y0);
printf ("%f
", dis);
return 0;
}追问if (y < 0)y = -y;这句是什么意思?追答就是如果y是负数,就把y取他的相反数,变成整数,达到取绝对值的效果追问能解释一下为什么运行结果有那么多位吗?
追答亲,自己输入两个数字,不需要括号和逗号追问哦哦,成功了,谢谢大神
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯