求解一个方程

斜率k=(c-a)/(d-b)m=k*n(m-a)*(m-a)+(n-b)*(n-b)=s*s求m n
2025-12-16 21:45:14
推荐回答(1个)
回答1:

斜率k=(c-a)/(d-b) 【方程0】
m=k*n 【方程1】
(m-a)*(m-a)+(n-b)*(n-b)=s*s 【方程2】
【方程1】是一个过点P(a,b)和点Q(c,d)的直线,记此直线为L
【方程2】是一个以点P(a,b)为圆心,s为半径的圆
求m n
显然L与圆P相交于点K(m,n),只需求出K点的横纵坐标即可。
将【方程2】改写成参数式:
m=a+scosθ
n=b+ssinθ
因此需要求出参数θ或者求出cosθ与sinθ
别忘了K点同时在直线L上,满足【方程1】,况且L通过【方程2】的圆心P
所以tanθ=k
利用三角函数关系可以解得:
sinθ=k/「(k2+1)
cosθ=1/「(k2+1)
或者
sinθ=-k/「(k2+1)
cosθ=-1/「(k2+1)
代入【方程2】的参数式就能得到m,n的值了。
m=a+s/「(k2+1)
n=b+sk/「(k2+1)
或者
m=a-s/「(k2+1)
n=b-sk/「(k2+1)
将k换成(c-a)/(d-b)就是最终结果了,由于格式原因,就略去了。

注:符号「表示二次根号,也就是开平方
/表示分数线,或者说除号。
k2表示k的平方
如果没有学过方程参数形式,可以把【方程0】和【方程1】通通代入【方程2】,解二次方程,耐心些把它解出来也是可以的。