永发信息网

设计一个算法,判断(x一xo)^2十(y一y0)^2=r^2,与直线ax十by十c=0的位置关系

答案:1  悬赏:20  手机版
解决时间 2021-02-19 04:10
设计一个算法,判断(x一xo)^2十(y一y0)^2=r^2,与直线ax十by十c=0的位置关系
最佳答案
思路:求出直线到圆心的距离,和半径比较,即可知道是相离、相交、还是相切,即求直线ax+by+c=0到点(x0,y0)的最短距离,和r进行比较


过点O(x0,y0)分别做平行于x轴和y轴的线段,于直线交于A,B。带入方程解得点A((-b*y0-c)/a,y0)和点B(x0,(-a*x0-c)/b)。易知点O到直线的距离为AO*BO/AB。


伪码:

function f(a, b, c, x0, y0, r)
    ao <- abs(x0 + (b * y0 + c) / a) //abs表示取绝对值
    bo <- abs(y0 + (a * x0 + c) / b)
    ab <- sqrt(ao^2 + bo^2) //sqrt表示开平方
    d <- ao * bo / ab
    if d = 0 then
        return "过圆心"
    else if d < r then
        return "相交"
    else if d = r then
        return "相切"
    else
        return "相离"实际编码需要注意浮点数的精度问题
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
工薪家庭如何理财
景色宾馆地址在哪,我要去那里办事
如何联系王者荣耀的在线客服
江苏太康属于哪个市
鑫宏装饰设计部怎么去啊,有知道地址的么
有的植物能生存在干旱的地方。下列关于耐旱植
捷安特扶余专卖店地址在什么地方,想过去办事
门字跟雀可以组成什么成语?
于台龙虾(阳羡东路店)我想知道这个在什么地方
我问女友是不是在暗示我,她隔天给我看过一次
我用驱蚊软件,为什么用了一会儿手机上爬满苍
三国志11威力加强版 吕布死了方天画戟在哪儿
锦州火车站什么时间可以买到初六去北京的火车
陆地上A地海拔500米,与陆地B相对高度为850米
积善堂在什么地方啊,我要过去处理事情
推荐资讯
下列图示实验操作中,正确的是CA. B. C. D.
益成家常菜在哪里啊,我有事要去这个地方
中药材与法律
寒假感悟400字
问下舟山和绍兴哪个好点?
陕西各个气象站的海拔高度是多少?
资产注入对股价的影响 资产注入是利好吗
62除以6等于几余几?
朱村街神岗村科学技术协会地址在什么地方,想
失信被执行人会自动消除吗?
歌词中有一句你的眼泪在飞是哪首歌
华字在名字中什么意思
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?