직선을 나타내는 방법(일반형 또는 기울기·y절편 꼴)을 고르고, 계수와 점의 좌표를 입력해 주세요. 아래 수식은 입력란과 연동되어 있어, 수식 속의 숫자를 직접 고쳐도 계산할 수 있습니다.
이 페이지에서 할 수 있는 것
- 계수와 좌표만 넣으면 점 \(\mathrm{P}(x_0,\ y_0)\)에서 직선 \(ax + by + c = 0\)까지의 거리(점에서 직선에 내린 수선의 길이 = 가장 짧은 거리)를 바로 계산할 수 있습니다
- 답은 \(\dfrac{7\sqrt{5}}{5}\)처럼 분모를 유리화한 정확한 값과 소수(유효숫자 12자리)로 함께 표시합니다
- 거리뿐 아니라 수선의 발 \(\mathrm{H}\)(직선 위에서 점 \(\mathrm{P}\)에 가장 가까운 점)의 좌표와 수선 자체의 방정식도 구할 수 있습니다
- 직선은 일반형 \(ax + by + c = 0\)과 기울기·y절편 꼴 \(y = mx + k\) 중 어느 쪽으로도 입력할 수 있습니다(기울기·y절편 꼴일 때는 일반형으로 고치는 풀이 과정도 표시합니다)
- 평행한 두 직선 \(ax + by + c_1 = 0\), \(ax + by + c_2 = 0\) 사이의 거리도 같은 화면에서 계산할 수 있습니다
- 계산 결과는 좌표평면의 그림으로도 확인할 수 있습니다. 공식의 쉬운 해설과 Excel·Google 스프레드시트·Python용 복사해서 쓰는 수식도 이 페이지에 모아 두었습니다
이 계산은 어디에 쓰일까요?
스마트폰이나 내비게이션이 받는 위치 정보에는 몇 미터에서 수십 미터의 오차가 있어, 그대로 점을 찍으면 건물 안이나 논 한가운데에 있는 것처럼 표시되기도 합니다. 그래서 지도 앱은 측정한 점에서 주변의 각 도로(지도 위에서는 선분의 모임)까지의 거리를 계산해, 가장 가까운 도로 위로 점을 옮깁니다. 맵 매칭이라고 부르는 처리로, 그 중심에 점과 직선 사이의 거리가 있습니다.
수선의 발까지 구하면 그 도로의 어디쯤에 있는지 정확히 알 수 있으므로, 다음 교차로까지 몇 미터 남았는지도 안내할 수 있습니다.
건축 도면에는 기둥 중심선, 도로나 철도의 설계에는 중심선이라는 기준 직선이 그어져 있고, 기둥, 벽, 연석, 말뚝의 위치는 ‘기준선에서 얼마나 떨어져 있는가’로 나타냅니다. 이 떨어진 거리가 바로 점과 직선 사이의 거리입니다. 현장에서는 토털 스테이션으로 잰 좌표로 이 거리를 계산해 설계값과 맞는지 확인합니다.
도로 중심선에서 도로 폭의 절반만큼 떨어진 곳에 연석을 놓는 것도, 같은 계산을 도로를 따라 되풀이하는 것입니다.
서포트 벡터 머신이라는 분류 방법은 두 집단의 데이터 사이에 직선(고차원에서는 평면)을 긋습니다. 두 집단의 데이터 점에서 되도록 멀리 떨어진 직선을 고르는데, 그 ‘얼마나 떨어져 있는가’가 점과 직선 사이의 거리입니다. 간격(마진)이 가장 넓은 직선을 고르면 아직 보지 못한 데이터에서도 실수가 적다고 여겨집니다.
딥러닝이 널리 퍼지기 전부터 스팸 메일 걸러내기나 이미지 분류의 표준 방법이었고, 학습 데이터가 적을 때는 지금도 유력한 선택지입니다.
자율 주행의 차선 인식이나 문서를 스캔했을 때의 기울기 보정에서는 검출한 점들에 가장 잘 맞는 직선이 필요합니다. 직선이 얼마나 잘 맞는지는 각 점에서 직선까지의 거리를 제곱해서 더한 값으로 재고, 그 합이 가장 작은 직선을 고릅니다.
벗어난 값을 무시하면서 직선을 맞추는 RANSAC이라는 방법도 점과 직선 사이의 거리를 써서, 직선에서 일정 거리 안에 있는 점을 ‘맞는 점’으로 셉니다.
지도 앱에서 축소하면 해안선이나 도로의 자잘한 굴곡이 자동으로 생략됩니다. 여기에는 더글러스-포이커(Ramer–Douglas–Peucker) 알고리즘이 쓰입니다. 꺾은선의 양 끝을 이은 직선에서 가장 먼 점을 찾아, 그 거리가 정해진 값보다 작으면 사이의 점을 모두 버리고, 그렇지 않으면 그 점에서 꺾은선을 나누어 같은 확인을 되풀이합니다.
데이터가 훨씬 줄어도 모양이 자연스러워 보이는 것은 각 점이 ‘직선에서 얼마나 벗어났는가’를 제대로 된 거리로 재기 때문입니다.
공식과 그림
용어·기호 해설
기호
| \(d\) | 디 | 거리를 나타낼 때 자주 쓰는 문자로, distance(거리)의 첫 글자입니다. 이 페이지에서는 점과 직선 사이의 거리(= 수선의 길이)를 나타냅니다. |
| \(a,\ b,\ c\) | 에이, 비, 시 | 직선의 방정식 \(ax + by + c = 0\)의 계수입니다. \(a\)는 \(x\)에 붙은 수, \(b\)는 \(y\)에 붙은 수, \(c\)는 숫자만으로 된 항(상수항)입니다. 정해진 수에는 알파벳 앞쪽의 문자를 쓰는 것이 관례입니다. |
| \(x_0,\ y_0\) | 엑스 영, 와이 영 | 거리를 재고 싶은 점 \(\mathrm{P}\)의 좌표입니다. 오른쪽 아래에 작게 쓴 0은 첨자로, ‘움직이는 변수 \(x\)가 아니라 정해진 한 점의 좌표’라는 것을 나타내기 위해 붙입니다. |
| \(\mathrm{P},\ \mathrm{H},\ \mathrm{A}\) | 피, 에이치, 에이 | 점에 붙이는 이름입니다. \(\mathrm{P}\)는 point(점), \(\mathrm{H}\)는 수선의 발에 관례적으로 쓰는 문자(높이를 뜻하는 height의 첫 글자라고 생각하면 됩니다), \(\mathrm{A}\)는 직선 위에 잡은 보조점입니다. |
| \(\left|\ \right|\) | 절댓값 | 절댓값의 기호입니다. 안의 수가 양수이면 그대로, 음수이면 부호를 뗀 값이 됩니다(\(|-7| = 7\)). 거리는 음수가 되지 않으므로 공식에서는 대입한 값의 절댓값을 취합니다. |
| \(\sqrt{\ }\) | 루트 | 제곱근(제곱하면 안의 수가 되는 0 이상의 수)을 나타내는 기호입니다. \(\sqrt{5}\)는 제곱하면 5가 되는 수입니다. 기호는 근(root)을 뜻하는 radix의 r을 길게 늘인 것에서 왔다고 합니다. |
| \(\vec{n}\) | 벡터 엔 | 법선벡터입니다. 직선에 수직인 방향을 나타내는 벡터로, normal(법선·수직)의 첫 글자 n을 씁니다. 직선 \(ax + by + c = 0\)에서는 \(\vec{n} = (a,\ b)\)입니다. |
| \(\left|\vec{n}\right|\) | 벡터 엔의 크기 | 벡터의 크기(화살표의 길이)입니다. \(\vec{n} = (a,\ b)\)이면 \(|\vec{n}| = \sqrt{a^2 + b^2}\)이고, 이것이 거리 공식의 분모입니다. |
| \(\vec{n}\cdot\overrightarrow{\mathrm{AP}}\) | 내적 | 두 벡터의 내적입니다. 성분끼리 곱해서 더한 값(\((a,\ b)\)와 \((p,\ q)\)이면 \(ap + bq\))으로, 두 방향이 얼마나 같은 쪽을 향하는지를 나타냅니다. 가운데 점(·)은 보통의 곱셈과는 다른 연산을 나타내는 기호입니다. |
| \(t\) | 티 | 점 \(\mathrm{P}\)에서 법선벡터 몇 개만큼 움직이면 직선에 닿는지를 나타내는 배율입니다. 이렇게 값이 바뀔 수 있는 수에는 \(t\)(time의 첫 글자)를 흔히 씁니다. |
| \(m,\ k\) | 엠, 케이 | 기울기·y절편 꼴 \(y = mx + k\)의 기울기와 y절편입니다. \(m\)은 기울기를 나타내는 문자로 널리 쓰입니다. 한국의 교과서는 y절편을 \(n\)으로 써서 \(y = mx + n\)으로 나타내는 경우가 많지만, 이 페이지에서는 \(k\)를 씁니다. |
| \(c_1,\ c_2\) | 시 일, 시 이 | 평행한 두 직선 각각의 상수항입니다. 오른쪽 아래의 작은 숫자는 첨자로, ‘첫 번째 직선’과 ‘두 번째 직선’을 구별하는 번호입니다. |
| \(\ell_1,\ \ell_2\) | 엘 일, 엘 이 | 직선에 붙이는 이름입니다. 직선을 나타내는 문자로는 line(직선)의 첫 글자 l의 필기체 \(\ell\)을 쓰는 관례가 있습니다. |
용어
| 점과 직선 사이의 거리 | 점에서 직선에 내린 수선의 길이입니다. 직선 위의 어느 점까지의 길이보다도 짧으므로 점과 직선의 ‘가장 짧은 거리’이기도 합니다. 고등학교 1학년 ‘도형의 방정식’에서 배웁니다. |
| 수선 | 어떤 직선과 수직으로 만나도록 그은 직선이나 선분입니다. 점에서 직선에 수선을 내리면 그 길이가 점과 직선 사이의 거리가 됩니다. |
| 수선의 발 | 점에서 내린 수선이 원래의 직선과 만나는 점입니다. 직선 위에서 그 점에 가장 가까운 곳입니다. |
| 일반형 | 직선의 방정식을 \(ax + by + c = 0\)의 꼴로 쓴 것입니다. \(y\)축에 평행한 직선(\(x = 3\) 등)도 쓸 수 있으므로 모든 직선을 같은 꼴로 다룰 수 있습니다. |
| 기울기·y절편 꼴 | 직선의 방정식을 \(y = mx + k\)의 꼴로 쓴 것입니다(교과서에서는 보통 \(y = mx + n\)). 기울기와 \(y\)축과 만나는 점을 한눈에 알 수 있지만, \(y\)축에 평행한 직선은 쓸 수 없습니다. |
| 법선벡터 | 직선(또는 평면)에 수직인 방향을 나타내는 벡터입니다. 직선 \(ax + by + c = 0\)의 법선벡터는 \((a,\ b)\)입니다. 점과 직선 사이의 거리 공식은 이 법선벡터의 방향으로 잰 길이를 구하는 것입니다. |
| 내적 | 두 벡터로 하나의 수를 만드는 계산입니다. 성분끼리 곱해서 더한 것(\((a,\ b)\cdot(p,\ q) = ap + bq\))으로, \(|\vec{u}||\vec{v}|\cos\theta\)와도 같습니다. 값이 0이면 두 벡터는 수직입니다. |
| 정사영 | 어떤 벡터를 다른 벡터의 방향으로 수직으로 빛을 비추어 떨어뜨린 그림자입니다. 점과 직선 사이의 거리는 \(\overrightarrow{\mathrm{AP}}\)를 법선벡터의 방향으로 떨어뜨린 그림자의 길이에 해당합니다. |
| 절댓값 | 수에서 부호를 뗀 크기입니다. 수직선 위에서 0으로부터의 거리에 해당합니다(\(|-7| = 7\), \(|7| = 7\)). 거리는 음수가 되지 않으므로 공식에서는 절댓값을 씁니다. |
| 분모의 유리화 | 분모에 남은 근호를 분모와 분자에 같은 수를 곱해 없애는 것입니다. 예를 들어 \(\dfrac{7}{\sqrt{5}}\)의 분모와 분자에 \(\sqrt{5}\)를 곱하면 \(\dfrac{7\sqrt{5}}{5}\)가 됩니다. 중학교 3학년에서 배우며, 최종 답은 보통 이렇게 씁니다. |
| 평행 | 두 직선이 만나지 않는(아무리 늘여도 부딪히지 않는) 관계입니다. \(a_1x + b_1y + c_1 = 0\)과 \(a_2x + b_2y + c_2 = 0\)은 \(x\)와 \(y\)의 계수의 비가 같을 때(식으로는 \(a_1b_2 - a_2b_1 = 0\)) 평행하거나 일치합니다. 상수항까지 같은 비이면 두 직선은 겹칩니다. |
| 대칭점 | 어떤 직선에 대해 거울에 비춘 것처럼 접어 옮긴 점입니다. 수선의 발 \(\mathrm{H}\)를 알면 점 \(\mathrm{P}\)의 대칭점은 \(2\mathrm{H} - \mathrm{P}\)로 구할 수 있습니다. |
| 좌표평면 | \(x\)축과 \(y\)축을 그어 평면 위의 점을 \((x,\ y)\)의 쌍으로 나타낼 수 있게 한 평면입니다. 도형 문제를 식의 계산으로 바꿀 수 있다는 것이 장점입니다. |
먼저 알아 두면 좋은 내용
이 페이지의 계산을 ‘의미를 알고’ 쓸 수 있도록, 먼저 알아 두면 좋은 내용을 정리했습니다.
막히면 이 표의 내용으로 돌아가 복습하는 것이 지름길입니다.
| 좌표평면과 점의 좌표(중학교 1학년, 12~13세) |
|
| 직선의 방정식(중학교 2학년~고등학교 1학년, 13~16세) |
|
| 제곱근과 분모의 유리화(중학교 3학년, 14~15세) |
|
| 절댓값(중학교 1학년, 12~13세) |
|
| 피타고라스 정리와 두 점 사이의 거리(중학교 2학년~고등학교 1학년, 13~16세) |
|
| 벡터와 내적(고등학교 선택 과목 ‘기하’) |
|
Excel로 계산하는 방법
| x의 계수 a | 1 |
| y의 계수 b | 2 |
| 상수항 c | -3 |
| 점 P의 x좌표 | 4 |
| 점 P의 y좌표 | 3 |
| 분자 |a*x0+b*y0+c| | =ABS(B1*B4+B2*B5+B3) |
| 분모 √(a^2+b^2) | =SQRT(B1^2+B2^2) |
| 거리 d | =B6/B7 |
| x의 계수 a | 1 |
| y의 계수 b | 2 |
| 직선 위의 점 A의 x좌표 | 3 |
| 직선 위의 점 A의 y좌표 | 0 |
| 점 P의 x좌표 | 4 |
| 점 P의 y좌표 | 3 |
| 내적 n·AP | =B1*(B5-B3)+B2*(B6-B4) |
| 법선벡터의 크기 |n| | =SQRT(B1^2+B2^2) |
| 거리 d | =ABS(B7)/B8 |
| 기울기 m | 2 |
| y절편 k | 1 |
| 점 P의 x좌표 | 4 |
| 점 P의 y좌표 | 3 |
| 거리 d | =ABS(B1*B3-B4+B2)/SQRT(B1^2+1) |
| x의 계수 a | 1 |
| y의 계수 b | 2 |
| 상수항 c | -3 |
| 점 P의 x좌표 | 4 |
| 점 P의 y좌표 | 3 |
| 배율 t | =(B1*B4+B2*B5+B3)/(B1^2+B2^2) |
| H의 x좌표 | =B4-B1*B6 |
| H의 y좌표 | =B5-B2*B6 |
| x의 계수 a | 1 |
| y의 계수 b | 2 |
| 첫 번째 직선의 상수항 c1 | -3 |
| 두 번째 직선의 상수항 c2 | 7 |
| 거리 d | =ABS(B3-B4)/SQRT(B1^2+B2^2) |
‘^’는 거듭제곱, ABS는 절댓값, SQRT는 제곱근입니다.
첫 번째 표는 점 (4, 3)과 직선 x + 2y - 3 = 0의 예입니다. 분자는 7, 분모는 약 2.2360679775, 거리는 약 3.1304951685가 됩니다.
두 번째 표는 ‘법선벡터와 AP의 내적 ÷ 법선벡터의 크기’로도 같은 거리가 나오는지 확인합니다. 내적은 7이고, 거리는 첫 번째 표와 같은 약 3.1304951685입니다.
세 번째 표는 점 (4, 3)과 직선 y = 2x + 1의 예입니다. 거리는 약 2.683281573입니다.
네 번째 표는 1.4, 2.6, 0.2가 나오므로 수선의 발은 (2.6, 0.2) = (13/5, 1/5)입니다.
다섯 번째 표는 x + 2y - 3 = 0과 x + 2y + 7 = 0 사이의 거리입니다. 답은 약 4.472135955입니다.
Google 스프레드시트로 계산하는 방법
| x의 계수 a | 1 |
| y의 계수 b | 2 |
| 상수항 c | -3 |
| 점 P의 x좌표 | 4 |
| 점 P의 y좌표 | 3 |
| 분자 |a*x0+b*y0+c| | =ABS(B1*B4+B2*B5+B3) |
| 분모 √(a^2+b^2) | =SQRT(B1^2+B2^2) |
| 거리 d | =B6/B7 |
| x의 계수 a | 1 |
| y의 계수 b | 2 |
| 직선 위의 점 A의 x좌표 | 3 |
| 직선 위의 점 A의 y좌표 | 0 |
| 점 P의 x좌표 | 4 |
| 점 P의 y좌표 | 3 |
| 내적 n·AP | =B1*(B5-B3)+B2*(B6-B4) |
| 법선벡터의 크기 |n| | =SQRT(B1^2+B2^2) |
| 거리 d | =ABS(B7)/B8 |
| 기울기 m | 2 |
| y절편 k | 1 |
| 점 P의 x좌표 | 4 |
| 점 P의 y좌표 | 3 |
| 거리 d | =ABS(B1*B3-B4+B2)/SQRT(B1^2+1) |
| x의 계수 a | 1 |
| y의 계수 b | 2 |
| 상수항 c | -3 |
| 점 P의 x좌표 | 4 |
| 점 P의 y좌표 | 3 |
| 배율 t | =(B1*B4+B2*B5+B3)/(B1^2+B2^2) |
| H의 x좌표 | =B4-B1*B6 |
| H의 y좌표 | =B5-B2*B6 |
| x의 계수 a | 1 |
| y의 계수 b | 2 |
| 첫 번째 직선의 상수항 c1 | -3 |
| 두 번째 직선의 상수항 c2 | 7 |
| 거리 d | =ABS(B3-B4)/SQRT(B1^2+B2^2) |
Python으로 계산하는 방법
from fractions import Fraction
# 직선 ax + by + c = 0(3/4 같은 분수는 Fraction(3, 4)로 씁니다)
a = Fraction(1)
b = Fraction(2)
c = Fraction(-3)
# 점 P의 좌표
x0 = Fraction(4)
y0 = Fraction(3)
# 점을 식에 대입한 값(부호 포함)과 법선벡터의 크기의 제곱
substituted = a * x0 + b * y0 + c
square = a * a + b * b
distance = abs(float(substituted)) / float(square) ** 0.5
print(f"분자 |a*x0+b*y0+c| = {abs(substituted)}")
print(f"분모 √(a^2+b^2) = √{square}")
print(f"거리 d = {distance}")
# 수선의 발 H(법선벡터의 t배만큼 되돌아감)
t = substituted / square
foot_x = x0 - a * t
foot_y = y0 - b * t
print(f"배율 t = {t}")
print(f"수선의 발 H = ({foot_x}, {foot_y})")
LaTeX 등 수식 언어로 쓰는 법(복사 가능)
d = |a·x₀ + b·y₀ + c| ÷ √(a² + b²)
d = \frac{\left|a x_0 + b y_0 + c\right|}{\sqrt{a^{2} + b^{2}}}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>d</mi>
<mo>=</mo>
<mfrac>
<mrow>
<mo>|</mo>
<mi>a</mi><msub><mi>x</mi><mn>0</mn></msub>
<mo>+</mo>
<mi>b</mi><msub><mi>y</mi><mn>0</mn></msub>
<mo>+</mo>
<mi>c</mi>
<mo>|</mo>
</mrow>
<msqrt>
<mrow>
<msup><mi>a</mi><mn>2</mn></msup>
<mo>+</mo>
<msup><mi>b</mi><mn>2</mn></msup>
</mrow>
</msqrt>
</mfrac>
</mrow>
</math>
d = abs(a*x_0 + b*y_0 + c)/sqrt(a^2 + b^2)
d = Abs[a x0 + b y0 + c]/Sqrt[a^2 + b^2]
d := abs(a*x0 + b*y0 + c)/sqrt(a^2 + b^2);
d = abs(a*x0 + b*y0 + c)/sqrt(a^2 + b^2);
d = |a x_0+b y_0+c|/√(a^2+b^2)
d = |n·AP| ÷ |n|
d = \frac{\left|\vec{n}\cdot\overrightarrow{\mathrm{AP}}\right|}{\left|\vec{n}\right|}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>d</mi>
<mo>=</mo>
<mfrac>
<mrow>
<mo>|</mo>
<mover><mi>n</mi><mo>→</mo></mover>
<mo>⋅</mo>
<mover><mrow><mi>A</mi><mi>P</mi></mrow><mo>→</mo></mover>
<mo>|</mo>
</mrow>
<mrow>
<mo>|</mo>
<mover><mi>n</mi><mo>→</mo></mover>
<mo>|</mo>
</mrow>
</mfrac>
</mrow>
</math>
d = abs(vec n * vec(AP))/abs(vec n)
d = Abs[n . ap]/Norm[n]
d := abs(DotProduct(n, ap))/Norm(n, 2);
d = abs(dot(n, ap))/norm(n);
d = |n\vec ∙AP\vec |/|n\vec |
d = |m·x₀ − y₀ + k| ÷ √(m² + 1)
d = \frac{\left|m x_0 - y_0 + k\right|}{\sqrt{m^{2} + 1}}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>d</mi>
<mo>=</mo>
<mfrac>
<mrow>
<mo>|</mo>
<mi>m</mi><msub><mi>x</mi><mn>0</mn></msub>
<mo>−</mo>
<msub><mi>y</mi><mn>0</mn></msub>
<mo>+</mo>
<mi>k</mi>
<mo>|</mo>
</mrow>
<msqrt>
<mrow>
<msup><mi>m</mi><mn>2</mn></msup>
<mo>+</mo>
<mn>1</mn>
</mrow>
</msqrt>
</mfrac>
</mrow>
</math>
d = abs(m*x_0 - y_0 + k)/sqrt(m^2 + 1)
d = Abs[m x0 - y0 + k]/Sqrt[m^2 + 1]
d := abs(m*x0 - y0 + k)/sqrt(m^2 + 1);
d = abs(m*x0 - y0 + k)/sqrt(m^2 + 1);
d = |m x_0-y_0+k|/√(m^2+1)
H = (x₀ − t·a, y₀ − t·b), t = (a·x₀ + b·y₀ + c) ÷ (a² + b²)
\mathrm{H} = \left(x_0 - t a,\ y_0 - t b\right),\quad t = \frac{a x_0 + b y_0 + c}{a^{2} + b^{2}}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi mathvariant="normal">H</mi>
<mo>=</mo>
<mo>(</mo>
<mrow><msub><mi>x</mi><mn>0</mn></msub><mo>−</mo><mi>t</mi><mi>a</mi></mrow>
<mo>,</mo>
<mrow><msub><mi>y</mi><mn>0</mn></msub><mo>−</mo><mi>t</mi><mi>b</mi></mrow>
<mo>)</mo>
<mo>,</mo>
<mi>t</mi>
<mo>=</mo>
<mfrac>
<mrow>
<mi>a</mi><msub><mi>x</mi><mn>0</mn></msub>
<mo>+</mo>
<mi>b</mi><msub><mi>y</mi><mn>0</mn></msub>
<mo>+</mo>
<mi>c</mi>
</mrow>
<mrow>
<msup><mi>a</mi><mn>2</mn></msup>
<mo>+</mo>
<msup><mi>b</mi><mn>2</mn></msup>
</mrow>
</mfrac>
</mrow>
</math>
H = (x_0 - t*a, y_0 - t*b), t = (a*x_0 + b*y_0 + c)/(a^2 + b^2)
t = (a x0 + b y0 + c)/(a^2 + b^2); h = {x0 - t a, y0 - t b}
t := (a*x0 + b*y0 + c)/(a^2 + b^2); H := [x0 - t*a, y0 - t*b];
t = (a*x0 + b*y0 + c)/(a^2 + b^2); H = [x0 - t*a, y0 - t*b];
H = (x_0-t a, y_0-t b), t = (a x_0+b y_0+c)/(a^2+b^2)
d = |c₁ − c₂| ÷ √(a² + b²)
d = \frac{\left|c_1 - c_2\right|}{\sqrt{a^{2} + b^{2}}}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>d</mi>
<mo>=</mo>
<mfrac>
<mrow>
<mo>|</mo>
<msub><mi>c</mi><mn>1</mn></msub>
<mo>−</mo>
<msub><mi>c</mi><mn>2</mn></msub>
<mo>|</mo>
</mrow>
<msqrt>
<mrow>
<msup><mi>a</mi><mn>2</mn></msup>
<mo>+</mo>
<msup><mi>b</mi><mn>2</mn></msup>
</mrow>
</msqrt>
</mfrac>
</mrow>
</math>
d = abs(c_1 - c_2)/sqrt(a^2 + b^2)
d = Abs[c1 - c2]/Sqrt[a^2 + b^2]
d := abs(c1 - c2)/sqrt(a^2 + b^2);
d = abs(c1 - c2)/sqrt(a^2 + b^2);
d = |c_1-c_2|/√(a^2+b^2)
ChatGPT 에게 물어서 계산하는 방법
당신은 수학(도형의 방정식)의 계산 도우미입니다. 다음 계산을 Python 코드를 실제로 실행해서 하고, 실행 결과의 수치만을 근거로 답해 주세요(암산이나 추측으로 답하지 마세요). 점 (4, 3)과 직선 x + 2y - 3 = 0에 대해 다음을 구해 주세요. 1. 점과 직선 사이의 거리(분모를 유리화한 정확한 값과 소수) 2. 점에서 직선에 내린 수선의 발의 좌표(기약분수로) 3. 그 수선의 방정식(점을 지나고 주어진 직선에 수직인 직선) Python에서는 표준 라이브러리의 fractions 모듈과 sympy로 정확하게 계산해 주세요. 사용한 식과 실행 결과의 수치를 보여 주세요.
사용법
-
1숫자 입력계산하고 싶은 숫자를 입력란에 입력합니다
-
2계산‘계산’ 버튼을 누릅니다
-
3결과 확인계산 결과가 바로 표시됩니다. 계산의 원리와 공식 해설도 같은 페이지에서 확인할 수 있습니다
DataChef의 특징
전문 지식 없이도 직관적이고 간단하게 사용
개인정보를 등록하지 않고도 이용할 수 있습니다
"다운로드"를 누르면 파일이 자동으로 삭제됩니다
출처 표기 불필요
상업적 이용 허가 연락도 필요 없습니다