Hàm tính khoảng cách giua 2 điểm c

09:10:4620/10/2020

Công thức tính khoảng cách giữa 2 điểm, hay công thức tính khoảng cách từ điểm tới đường thẳng được sử dụng phổ biến trong hình học.

Không những thế, công thức tính khoảng cách giữa 2 điểm, tính khoảng cách tử điểm tới đường thẳng còn là cơ sở để các em tính được khoảng cách giữa 2 đường thẳng, giữa 2 mặt phẳng và khoảng cách từ điểm tới mặt phẳng.

Bài viết này chúng ta cùng ôn lại công thức tính khoảng cách giữa 2 điểm, từ điểm tới đường thẳng, qua đó vận dụng giải một số bài tập minh họa để các em hiểu rõ cách vận dụng công thức tính này.

I. Công thức tính khoảng cách giữa 2 điểm

- Cho điểm A[xA; yA] và điểm B[xB; yB], khoảng cách giữa hai điểm này là:

 

II. Công thức tính khoảng cách từ điểm tới đường thẳng

- Cho đường thẳng Δ: Ax + By + C = 0 và điểm M0[x0; y0]. Khi đó khoảng cách từ điểm M0 đến đường thẳng Δ là:

 

- Khoảng cách từ điểm M0 đến đường thẳng Δ là độ dài của đoạn thẳng M0H [trong đó H là hình chiếu vuông góc của M0 lên Δ].

> Lưu ý: Trong trường hợp đường thẳng Δ chưa viết dưới dạng tổng quát thì đầu tiên ta cần đưa đường thẳng Δ về dạng tổng quát.

III. Tính khoảng cách giữa 2 điểm, từ điểm tới đường thẳng qua bài tập minh họa

* Ví dụ 1: Trong mặt phẳng Oxy cho điểm A[1;2] và điểm B[-3;4]. Tính độ dài đoạn thẳng AB.

* Lời giải:

- Độ dài đoạn thẳng AB là khoảng cách giữa 2 điểm A,B ta có:

 

 

* Ví dụ 2: Tính khoảng cách từ điểm M[2;-1] đến đường thẳng [Δ]: 3x + 4y + 7 = 0.

* Lời giải:

- Khoảng cách từ điểm M đến đường thẳng [Δ] là:

 

* Ví dụ 3: Tính khoảng cách từ điểm A[0;1] đến đường thẳng [Δ]: 4x + 3y = 6

* Lời giải:

- Đường thẳng [Δ]: 4x + 3y = 6 ⇔ 4x + 3y - 6 = 0

- Khoảng cách từ điểm A đến [Δ] là:

 

* Ví dụ 4: Tính khoảng cách từ điểm M[1;1] đến đường thẳng [Δ] có phương trình tham số: x = 3 + 3t và y = 2 + t.

* Lời giải:

- Ta cần đưa phương trình đường thẳng [Δ] về dạng tổng quát.

- Ta có: [Δ] đi qua điểm A[3;2] và có VTCP

 ⇒ VTPT

⇒ Phương trình [Δ]: 1.[x - 3] - 3[y - 2] = 0 ⇔ x - 3y + 3 = 0

⇒ Khoảng cách từ điểm M[1;1] đến [Δ] là:

 

* Ví dụ 5: Đường tròn [C] có tâm là gốc tọa độ O[0; 0] và tiếp xúc với đường thẳng [Δ]: 4x - 3y + 25 = 0. Bán kính R của đường tròn [C] bằng:

* Lời giải:

- Do đường thẳng [Δ] tiếp xúc với đường tròn [C] nên khoảng cách từ tâm đường tròn đến đường thẳng  [Δ] chính là bán kính R của đường tròn.

 

* Ví dụ 6: Khoảng cách từ giao điểm của hai đường thẳng [d1]: x - 3y + 4 = 0 và
[d2]: 2x + 3y - 1 = 0 đến đường thẳng ∆: 3x + y + 16 = 0 bằng:

* Lời giải:

- Trước hết ta cần tìm giao điểm của [d1] và [d2]; từ đó tính khoảng cách từ giao điểm này tới [∆].

- Giả sử giao điểm của [d1] và [d2] là A thì tọa độ của A là nghiệm của hệ phương trình:

 x - 3y + 4 = 0 và 2x + 3y - 1 = 0

Giải hệ được x = -1 và y = 1 ⇒ A[-1;1]

- Khoảng cách từ điểm A[-1;1] đến đường thẳng ∆: 3x + y + 16 = 0 là:

 

 

* Ví dụ 7: Trong mặt phẳng hệ tọa độ Oxy, cho tam giác ABC có A[1;1]; B[0;3] và C[4;0]. 

a] Tính chiều dài đường cao AH [H thuộc BC].

b] Tính diện tích tam giác ABC

* Lời giải:

a] Tính chiều dài đường cao AH

- Chiều dài đường cao AH chính là khoảng cách từ A tới đường thẳng BC. Vì vậy ta cần viết phương trình dường thẳng BC từ đó tính khoảng cách từ A tới BC.

- PT đường thẳng BC: Đi qua B[0;3] và có CTCP BC[xC - xB; yC - yB] = [4;-3] nên VTPT là n[3;4].

⇒ PTĐT [BC] là: 3[x - 0] + 4[ y - 3] = 0 ⇔ 3x + 4y - 12 = 0

⇒ chiều cao của tam giác kẻ từ đỉnh A chính là khoảng cách từ điểm A đến đường thẳng BC:

 

b] Tính diện tích tam giác ABC.

- Ta có: SΔABC = [1/2].AH.BC

- Có độ dài BC là:

 

 

- Mà AH = d[A;BC] = 1 [theo câu a]

⇒ SΔABC = [1/2].AH.BC = [1/2].1.5 = 5/2 =2,5.

Như vậy, việc tính khoảng cách từ điểm M tới đường thẳng Δ chính là đồng nghĩa với việc tính độ dài của đoạn thẳng MH [H là hình chiếu của M lên Δ, tức MH ⊥ Δ].

Hy vọng với bài viết tính khoảng cách giữa 2 điểm và từ 1 điểm tới đường thẳng ở trên, các em đã hiểu rõ và vận dụng giải được các bài tập dạng này. Qua đó giúp các em chuẩn bị tốt kiến thức cho bài tính khoảng cách giữa 2 mặt phẳng, 2 đường thẳng hay từ 1 điểm tới mặt phẳng.

#include #include typedef struct Diem { int x, y, z; } diem; void nhap[diem N] { printf["Nhap toa do cua diem %c", N]; printf["Toa do x: "]; scanf["%d", &N.x]; printf["Toa do y: "]; scanf["%d", &N.y]; printf["Toa do z: "]; scanf["%d", &N.z]; } double tinhKhoangCach[diem X, diem Y] { double kc; kc = sqrt[pow[[X.x - Y.x], 2] + pow[[X.y - Y.y], 2] + pow[[X.z - Y.z], 2]]; return kc; } int main[] { diem A, B; nhap[A]; nhap[B]; printf["Khoang cach giua A va B = %lf", tinhKhoangCach[A, B]]; return 0; }

mọi người ghé qua cho e hỏi bài e làm tính khoảng cách 2 điểm trong không gian code như e tại sao kết quả lại sai? mà cái chỗ

printf["Nhap toa do cua diem %c", N];

tại sao lại không in ra được Điểm A, hay B và dùng như thế nào để hiển thị ra

nhap[A]; nhap[B];

e dùng hàm nhap va hàm tinhKhoangCach để nếu mà tính khoảng cách 2 điểm khác thì không phải viết lại! Mọi người giúp với! tks

Ý bạn là sao? Sai như thế nào, không in ra được điểm A hay B nghĩa là sao?

2 Likes

vn5chau.com:

void nhap[diem N]

Cái này phải nạp &N.

1 Like

mình làm &N như bạn thì DEV C++ báo lỗi, làm như mình thì lại ok

void nhap[diem N]

bạn thử chạy xem, rồi reply lại mình nha! tks

bạn chạy thử xem, mình chạy được nhưng kết quả ra thì sai!
chỗ

printf["Nhap toa do cua diem %c", N];

chỗ này thì nó ra như này

Nhap toa do cua diem [ký tự lằng nhằng]

Xem lại đang dùng compiler C hay C++.
Sửa thành tham biến con trỏ là được:

void nhap[diem *N]

2 Likes

e dùng complier là TDM-GCC 4.9.2 64-bit Release cái này có ổn k a? nếu k ổn a cho ý kiến ạ

mà cho e xin link fb của a, có gì e tiện liên lạc

Không đúng kiểu dữ liệu thì nó chả ra linh tinh. Bạn nên xem lại kiến thức cơ bản

2 Likes

là sao bạn chỉ dẫn kĩ hơn xem nào! Hướng dẫn sửa code cho mình với. Lý do tại sao lại sửa như vậy!

Bạn dùng GCC thì lúc gọi compiler thêm tag
-std=c++11 vào, nếu không nó sẽ mặc định project là C và build C, trong C không có tham chiếu nên sẽ lỗi

1 Like

mình code trên Dev C++ sử dụng Windows sao lại có cái -std=c++11[quote=“Dark.Hades, post:10, topic:56633”] -std=c++11 vào, nếu không nó sẽ mặc định project là C và build C, trong C không có tham chiếu nên sẽ lỗi [/quote] mình k hiểu cho mình xin link fb được k? code mình vẫn chạy được nhưng lỗi kết quả ý bạn là như thế à?

mà tham chiếu trong C như thế nào? bạn sửa code lại cho mình xem nào. để mình dễ so sánh và học hơn!

void fun[int &N]; // cái này là tham chiếu, dùng trong C sẽ báo lỗi

vn5chau.com:

mình k hiểu cho mình xin link fb được k?

Góp ý nhỏ cho bạn: không hiểu thì cmt hỏi tiếp vào đây cũng được mà, sao phải xin fb :v

Bạn đọc lại kiến thức cơ bản ở phần %c rồi ngẫm lại sẽ tự thấy sai ở đâu

1 Like

void nhap[diem &N] thêm & như này là được.
còn cái này diem %c, N thì sai. N là struct chứ không phải là char mà dùng %c. dòng printf này bỏ đi. Hoặc là tạo thêm 1 dòng #define trong struct để lưu tên [A,B] rồi printf theo tên

void nhap[diem &N,char name] { printf[“Nhap toa do cua diem %c: \r\n”, name]; printf[“Toa do x: “]; scanf[”%d”, &N.x]; printf[“Toa do y: “]; scanf[”%d”, &N.y]; printf[“Toa do z: “]; scanf[”%d”, &N.z]; } int main[] { diem A, B; nhap[A,‘A’]; nhap[B,‘B’]; printf[“Khoang cach giua A va B = %lf”, tinhKhoangCach[A, B]]; return 0;

}

1 Like

Home Categories FAQ/Guidelines Terms of Service Privacy Policy

Video liên quan

Chủ Đề