Computer >> Máy Tính >  >> Lập trình >> C ++

Chương trình tìm đường đi qua 2 điểm trong C ++

Trong bài toán này, ta cho tọa độ hai điểm A và B trên mặt phẳng tọa độ. Nhiệm vụ của chúng ta là tạo một chương trình để tìm dòng đi qua 2 điểm trong C ++.

Mô tả vấn đề

Để tìm đoạn thẳng, chúng ta cần sử dụng phương trình của đoạn thẳng và đặt nghiệm bằng cách sử dụng tọa độ.

Hãy lấy một ví dụ để hiểu vấn đề -

Đầu vào:A =(3, 3) B =(6, 1)

Đầu ra :2x + 3y =15

Phương pháp tiếp cận giải pháp

Để tìm phương trình của đường thẳng, chúng ta sẽ sử dụng phương trình tổng quát của đường -

ax + by =c

Điều này phải được thỏa mãn bởi cả hai điểm A (x1, y1) và B (x2, y2)

Ý chí lập các phương trình,

ax1 + by1 =c

ax2 + by2 =c

Bây giờ, vì c là chung cho cả hai phương trình chúng ta có

ax1 + by1 =ax2 + by2

=> ax1 - ax2 =by2 - by1

Đánh đồng chúng ta nhận được,

$$ a =(y2 - y1) $$ $$ b =(x1 - x2) $$

c sẽ được tìm thấy bằng cách sử dụng phương trình,

$$ ax1 + by1 =c $$

Vì vậy, đây là phương trình cho phương trình của đường,

$$ a =(y2 - y1) $$ $$ b =(x1 - x2) $$ $$ c =ax1 + by1 $$

Ví dụ

#include <iostream> using namespace std;
void findLine(int points[2][2]) {
   int a = points[1][1] - points[0][1];
   int b = points[0][0] - points[1][0]; int c = a*points[0][0] + b*points[0][1];
   cout<<"("<<a<<"x) + ("<<b<<"y) = ("<<c<< 
}
int main() {
   int points[2][2] = {{5, 9}, {1, 4}}; cout<<"The equation of line is "; findLine(points);
   return 0;
}

Đầu ra

The equation of line is (-5x) + (4y) = (11)