Thuật Toán Giải Hệ Phương Trình 2 Ẩn C, C++ Code By Kenjiakito

Trong chương trình toán học THCS các bạn sẽ được làm quen với một số dạng hệ phương trình 2 ẩn. Có vô vàn biến thể cho loại hệ phương trình này. Ở bài viết dưới đây, lingocard.vn sẽ trình bày một số cách giải hệ phương trình 2 ẩn phổ biến nhất, áp dung cho hầu hết cá bài tập cùng loại.

Đang xem: Giải hệ phương trình 2 ẩn c

Hệ phương trình hai ẩn có chứa phương trình bậc nhất

1. Hệ phương trình bậc nhất hai ẩn

$left{ {egin{array}{*{20}{c}}{{a_1}x + {b_1}y = {c_1}}\{{a_2}x + {b_2}y = {c_2}}end{array}}
ight.,left( {{a_1}^2 + {b_1}^2 > 0,{a_2}^2 + {b_2}^2 > 0}
ight)$

Đây là hệ phương trình cơ bản để giải chúng ta có thể thực hiện phép thế, sử dụng máy tính bỏ túi hoặc sử dụng định thức Crame (hay được dùng trong biện luận)

$egin{array}{*{20}{c}}{D = left| {egin{array}{*{20}{c}}{{a_1}}&{{b_1}}\{{a_2}}&{{b_2}}end{array}}
ight|,}&{D = left| {egin{array}{*{20}{c}}{{c_1}}&{{b_1}}\{{c_2}}&{{b_2}}end{array}}
ight|,}&{D = left| {egin{array}{*{20}{c}}{{a_1}}&{{c_1}}\{{a_2}}&{{c_2}}end{array}}
ight|}end{array}$

Các trường hợp Kết quả
$D
e 0$
Hệ phương trình có nghiệm duy nhất:

$left( {x;y}
ight) = left( {frac{{{D_x}}}{D};frac{{{D_y}}}{D}}
ight)$

$D = {D_x} = {D_y} = 0$ Hệ phương trình có vô số nghiệm.
$D = 0$ nhưng ${D_x}
e 0$ hoặc ${D_y}
e 0$
Hệ phương trình vô nghiệm.

2. Hệ phương trình bậc nhất ba ẩn

$left{ {egin{array}{*{20}{c}}{{a_1}x + {b_1}y + {c_1}z = {d_1}}\{{a_2}x + {b_2}y + {c_2}z = {d_2}}\ {{a_3}x + {b_3}y + {c_3}z = {d_3}}end{array}}
ight.,left( {{a_i}^2 + {b_i}^2 + {c_i}^2 > 0}
ight)$

Hệ này dùng phép thế đưa về hệ bậc nhất hai ẩn hoặc dùng máy tính bỏ túi.

3. Hệ phương trình hai ẩn gồm một phương trình bậc nhất và một phương trình bậc hai

$left{ {egin{array}{*{20}{c}}{mx + ny = a}\{a{x^2} + bxy + c{y^2}}end{array}}
ight.$

Rút $x$ theo $y$ hoặc rút $y$ theo $x$ từ phương trình đầu của hệ thế vào phương trình thứ hai của hệ đưa về giải phương trình bậc hai.

Hệ phương trình bậc hai hai ẩn dạng tổng quát

1. Nội dung và phương pháp

Hệ phương trình bậc hai hai ẩn là hệ có dạng:

$left{ egin{array}{l}egin{array}{*{20}{c}}{{a_1}{x^2} + {b_1}{y^2} + {c_1}xy + {d_1}x + {e_1}y + {f_1} = 0}&{^{left( 1
ight)}}end{array}\egin{array}{*{20}{c}}{{a_2}{x^2} + {b_2}{y^2} + {c_2}xy + {d_2}x + {e_2}y + {f_2} = 0}&{^{left( 2
ight)}}end{array}end{array}
ight.$

a) Nếu một trong hai phương trình là bậc nhất thì dễ dàng giải hệ bằng phương pháp thế.

b) Nếu $frac{{{a_1}}}{{{a_2}}} = frac{{{b_1}}}{{{b_2}}}$ bằng cách loại bỏ ${x^2} + {y^2}$ đưa về hệ phương trình bậc hai có một phương trình bậc nhất và giải hệ bằng phương pháp thế.

c) Nếu một trong hai phương trình là thuần nhất bậc hai (chẳng hạn ${d_1} = {e_1} = {f_1}$) khi đó phương trình đầu là ${a_1}{x^2} + {b_1}{y^2} + {c_1}xy = 0$ phương trình nãy cho phép ta tính được $t = frac{x}{y}$

d) Hệ đẳng cấp bậc hai nếu ${d_1} = {e_1} = {d_2} = {e_2} = 0$ hệ trở thành hệ đẳng cấp bậc hai. Bằng cách khử đi hệ số tự do ta đưa về một phương trình thuần nhất bậc hai cho phép ta tính được $t = frac{x}{y}$

e) Đưa về hệ bậc nhất bằng cách đặt $y = tx$ và đặt $z = {x^2}$ giải hệ với hai ẩn là $left( {x;z}
ight)$ lúc sau giải phương trình $z = {x^2}$

f) Trong nhiều trường hợp ta có thể áp dụng phương pháp tịnh tiến nghiệm. Bằng cách đặt $left{ egin{array}{l}x = u + a\y = v + bend{array}
ight.$ (với $u,v$ là các ẩn và $a,b$ là hai nghiệm của hệ phương trình). Để tìm $a,b$ có hai cách thực hiện ta cho các hạng tử bậc nhất sau khi khai triển triệt tiêu từ đó ta có hệ đẳng cấp bậc hai với hai ẩn $u,v$ cách giải tương tự trường hợp c) hoặc đạo hàm một phương trình lần lượt theo biến $x$ theo biến $y$ giải hệ phương trình thu được ta được nghiệm $left( {{x_0};{y_0}}
ight)$ khi đó $a = {x_0},b = {y_0}$

Cách 1: Lấy $left( 1
ight) + k.left( 2
ight)$ đưa về một phương trình bậc hai với ẩn $t = ax + by + c$ ta tìm $k$ hợp lý sao cho phương trình bậc hai có Delta là số chính phương.

Cách 2: Tìm hai cặp nghiệm của hệ phương trình. Viết phương trình đường thẳng đi qua hai điểm đó. Lấy một điểm khác hai điểm trên thay vào hai vế các phương trình của hệ từ đó suy ra hệ số bất định cần tìm.

h) Đạo hàm lần lượt theo biến x hoặc theo y đối với một trong hai phương trình của hệ tìm ra nghiệm $x = a,y = b$ khi đó đặt ẩn phụ $left{ egin{array}{l}u = x – a\v = y – bend{array}
ight.$ đưa về hệ phương trình đẳng cấp.

Bài tập giải hệ phương trình 2 ẩn

Bài 1.

Xem thêm: Cách Để Vẽ Sơ Đồ Trong Excel Đơn Giản Dễ Thực Hiện, Cách Vẽ Lưu Đồ Trong Excel

Giải hệ phương trình $left{ egin{array}{l}{x^2} + {y^2} – 4x + 2y = – 3\{x^2} + {y^2} – xy + x – 2y = 12end{array}
ight.$

Lời giải

Cách 1: Sử dụng phương pháp thế. Trừ theo vế hai phương trình của hệ ta được: $5x – 4y – xy = 15$. Hệ phương trình đã cho tương đương với:

$left{ egin{array}{l}5x – 4y – xy = 15\{x^2} + {y^2} – 4x + 2y = – 3end{array}
ight. Leftrightarrow left{ egin{array}{l}y = frac{{5x – 15}}{{x + 4}}\{x^2} + {y^2} – 4x + 2y = – 3end{array}
ight.left( {x
e – 4}
ight)$

$ Leftrightarrow left{ egin{array}{l}y = frac{{5x – 15}}{{x + 4}}\{x^2} + {left( {frac{{5x – 15}}{{x + 4}}}
ight)^2} – 4x + 2.frac{{5x – 15}}{{x + 4}}end{array}
ight.$

$ Leftrightarrow left{ egin{array}{l}y = frac{{5x – 15}}{{x + 4}}\{x^2} + 4{x^3} + 22{x^2} – 180x + 153 = 0end{array}
ight.$

$ Leftrightarrow left{ egin{array}{l}y = frac{{5x – 15}}{{x + 4}}\left( {x – 1}
ight)left( {x – 3}
ight)left( {{x^2} + 8x + 51}
ight) = 0end{array}
ight. Leftrightarrow left< egin{array}{l}x = 1,y = – 2\x = 3,y = 0end{array} ight.$

Vậy hệ phương trình có hai nghiệm là $left( {x;y}
ight) = left( {3;0}
ight);left( {1; – 2}
ight)$

Cách 2: Đưa về hệ bậc nhất

Nhận thấy $x = 0$ không thỏa mãn hệ phương trình.

Xét $x
e 0$ đặt $y = tx$ hệ phương trình trở thành:

$left{ egin{array}{l}left( {1 + {t^2}}
ight){x^2} + 2left( {t – 2}
ight)x = – 3\left( {{t^2} – t + 1}
ight){x^2} + left( {1 – 2t}
ight)x = 12end{array}
ight.$

Đặt $z = {x^2}$ khi đó hệ trở thành: $left{ egin{array}{l}left( {1 + {t^2}}
ight)z + 2left( {t – 2}
ight)x = – 3\left( {{t^2} – t + 1}
ight)z + left( {1 – 2t}
ight)x = 12end{array}
ight.$

Ta có các định thức:

$D = left| {egin{array}{*{20}{c}}{1 + {t^2}}&{2t – 4}\{{t^2} – t + 1}&{1 – 2t}end{array}}
ight| = – 4{t^3} + 7{t^2} – 8t + 5$

$egin{array}{*{20}{c}}{{D_z} = left| {egin{array}{*{20}{c}}{ – 3}&{2t – 4}\{12}&{1 – 2t}end{array}}
ight| = – 18t + 45;}&{{D_x} = left| {egin{array}{*{20}{c}}{1 + {t^2}}&{ – 3}\{{t^2} – t + 1}&{12}end{array}}
ight| = 15{t^2} – 3t + 15}end{array}$

Nếu $D = 0 Leftrightarrow – 4{t^3} + 7{t^2} – 8t + 5 = 0 Leftrightarrow left( {t – 1}
ight)left( {4{t^2} – 3t + 5}
ight) = 0 Leftrightarrow t = 1$

$ Rightarrow {D_z} = 27
e 0$ nên hệ vô nghiệm.

Xét $t
e 1 Rightarrow D
e 0$ khi đó $left{ egin{array}{l}x = frac{{{D_x}}}{D}\z = frac{{{D_z}}}{D}end{array}
ight. Rightarrow z = {x^2} Leftrightarrow {D_z}.D = {D_x}^2$

$left( { – 18t + 45}
ight)left( { – 4{t^3} + 7{t^2} – 8t + 5}
ight) = {left( {15{t^2} – 3t + 15}
ight)^2}$

$ Leftrightarrow 153{t^4} + 216{t^3} + 360t = 0$

$ Leftrightarrow 9tleft( {t + 2}
ight)left( {17{t^2} – 10t + 20}
ight) = 0$

$ Leftrightarrow left< egin{array}{l}t = 0\t = – 2end{array} ight.$

TH1: Nếu $t = 0 Rightarrow D = 5,{D_x} = 15 Rightarrow x = frac{{{D_x}}}{D} = 3 Rightarrow y = 0$

TH2: Nếu $t = – 2 Rightarrow D = 81,{D_x} = 81 Rightarrow x = frac{{{D_x}}}{D} = 1 Rightarrow y = – 2$

Vậy hệ phương trình có hai nghiệm là $left( {x;y}
ight) = left( {3;0}
ight);left( {1; – 2}
ight)$

Cách 3: Đặt ẩn phụ đưa về hệ đẳng cấp

Đặt $left{ egin{array}{l}x = u + 1\y = v – 2end{array}
ight.$ hệ phương trình trở thành:

$left{ egin{array}{l}{left( {u + 1}
ight)^2} + {left( {v – 2}
ight)^2} – 4left( {u + 1}
ight) + 2left( {v – 2}
ight) = – 3\{left( {u + 1}
ight)^2} + {left( {v – 2}
ight)^2} – left( {u + 1}
ight)left( {v – 2}
ight) + u + 1 – 2left( {v – 2}
ight) = 12end{array}
ight.$

$ Leftrightarrow left{ egin{array}{l}{u^2} + {v^2} – 2u – 2v = 0\{u^2} – uv + {v^2} + 5u – 7v = 0end{array}
ight.$

Cách 4: Hệ số bất định (hai hướng xử lý).

Viết lại hệ phương trình dưới dạng: $left{ egin{array}{l}egin{array}{*{20}{c}}{{x^2} + {y^2} – 4x + 2y = – 3}&{^{left( 1
ight)}}end{array}\egin{array}{*{20}{c}}{{x^2} + {y^2} – xy + x – 2y = 12}&{^{left( 2
ight)}}end{array}end{array}
ight.$

Lấy $left( 1
ight) + k.left( 2
ight)$ theo vế ta được:

$left( {k + 1}
ight){x^2} – left( {ky + k + 4}
ight)x + kleft( {{y^2} – 2y – 12}
ight) + {y^2} + 2y + 3 = 0$

Ta có: ${Delta _x} = {left( {ky + k + 4}
ight)^2} – 4left( {k + 1}
ight)left( {kleft( {{y^2} – 2y – 12}
ight) + {y^2} + 2y + 3}
ight)$

$ = left( { – 3{k^2} – 8k – 4}
ight){y^2} + left( {10{k^2} + 8k – 8}
ight)y + 49{k^2} + 44k + 4 = 0$

Ta chọn $k$ sao cho ${Delta _x}$ là số chính phương. Muốn vậy, cho ${Delta ^prime }_y = 0$

$ Leftrightarrow {left( {5{k^2} + 4k – 4}
ight)^2} – left( { – 3{k^2} – 8k – 4}
ight)left( {49{k^2} + 44k + 4}
ight) = 0$

$ Leftrightarrow 43{k^4} + 141{k^3} + 134{k^2} + 44k + 8 = 0 Rightarrow k = – 1$

Tức là trừ theo vế hai phương trình của hệ như lời giải 1 ở trên.

Bài 2. Giải hệ phương trình $left{ egin{array}{l}{x^2} + 3{y^2} + 4xy – 18x – 22y + 31 = 0\2{x^2} + 4{y^2} + 2xy + 6x – 46y + 175 = 0end{array}
ight.$

Lời giải

Cách 1: Đặt $left{ egin{array}{l}x = u + a\y = v + bend{array}
ight.$ khi đó hệ phương trình trở thành:

$left{ egin{array}{l}{left( {u + a}
ight)^2} + 3{left( {v + b}
ight)^2} + 4left( {u + a}
ight)left( {v + b}
ight) – 18left( {u + a}
ight) – 22left( {v + b}
ight) + 31 = 0\2{left( {u + a}
ight)^2} + 4{left( {v + b}
ight)^2} + 2left( {u + a}
ight)left( {v + b}
ight) + 6left( {u + a}
ight) – 46left( {v + b}
ight) + 175 = 0end{array}
ight.$

$ Leftrightarrow left{ egin{array}{l}{u^2} + 3{v^2} + 4uv + left( {2a + 4a – 18}
ight)u + left( {6b + 4a – 22}
ight)v + {a^2} + 3{b^2} + 4ab – 18a – 22b + 31 = 0\2{u^2} + 4{v^2} + 2uv + left( {4a + 2b + 6}
ight)u + left( {8b + 2a – 46}
ight)v + 2{a^2} + 4{b^2} + 2ab + 6a – 46b + 175 = 0end{array}
ight.$

Ta sẽ chọn các hệ số $left( {a;b}
ight)$ sao cho hệ trên trở thành hệ đẳng cấp bậc hai.

$ Leftrightarrow left{ egin{array}{l}2a + 4b – 18 = 0\6b + 4a – 22 = 0\4a + 2b + 6 = 0\8b + 2a – 46 = 0end{array}
ight. Leftrightarrow left{ egin{array}{l}a = – 5\b = 7end{array}
ight.$

Thay vào hệ trên ta được:

$left{ egin{array}{l}{u^2} + 3{v^2} + 4uv = 1\2{u^2} + 4{v^2} + 2uv = 1end{array}
ight. Leftrightarrow left{ egin{array}{l}{u^2} + {v^2} – 2uv = 0\2{u^2} + 4{v^2} + 2uv = 1end{array}
ight. Leftrightarrow left{ egin{array}{l}u = v\8{u^2} = 1end{array}
ight.$

$ Leftrightarrow left< egin{array}{l}u = v = frac{{ – 1}}{{2sqrt 2 }}\u = v = frac{1}{{2sqrt 2 }}end{array} ight. Leftrightarrow left< egin{array}{l}left{ egin{array}{l}x = frac{{ – 1}}{{2sqrt 2 }} – 5\y = frac{{ – 1}}{{2sqrt 2 }} + 7end{array} ight.\left{ egin{array}{l}x = frac{1}{{2sqrt 2 }} – 5\y = frac{1}{{2sqrt 2 }} + 7end{array} ight.end{array} ight.$

Vậy hệ phương trình có hai nghiệm là:

$left( {x;y}
ight) = left( {frac{{ – 1}}{{2sqrt 2 }} – 5;frac{{ – 1}}{{2sqrt 2 }} + 7}
ight);left( {frac{1}{{2sqrt 2 }} – 5;frac{1}{{2sqrt 2 }} + 7}
ight)$

Nhận xét: Việc đặt ẩn phụ thực hiện bằng thủ thuật nhanh như sau:

Đạo hàm theo biến x và đạo hàm theo biến y một trong hai phương tình của hệ (ta lựa chọn phương trình đầu của hệ) ta được:

$left{ egin{array}{l}2x + 4y – 18 = 0\6y + 4x – 22 = 0end{array}
ight. Leftrightarrow left{ egin{array}{l}x = – 5\y = 7end{array}
ight. Rightarrow left{ egin{array}{l}u = x + 5\v = y + 7end{array}
ight.$

Cách 2: Lấy $left( 2
ight) + k.left( 1
ight)$ ta được:

$left( {k + 2}
ight){x^2} + 2left( {y + 3 + 2ky – 9k}
ight)x + 4{y^2} + 3k{y^2} – 46y + 175 – 22ky + 31k = 0$

Coi đây là phương trình bậc hai với ẩn là $x$.

Ta có:

${{Delta ‘}_x} = {left< {left( {2x + 1} ight)y + 3 – 9k} ight>^2} + left( {k + 2}
ight)left( {4{y^2} + 3k{y^2} – 46y + 175 – 22ky + 31k}
ight)$

$ = left( {{k^2} – 6k – 7}
ight){y^2} – 14left( {{k^2} – 6k – 7}
ight)y + 50{k^2} – 291k – 341$

Chọn $k = – 1$ thì ${{Delta ‘}_x} = 0$ suy ra $x = – frac{{left( {2k + 1}
ight)y + 3 – 9k}}{{k + 2}} = y – 12$

Lời giải

Lấy $left( 2
ight) – left( 1
ight)$ theo vế ta được: ${x^2} + 2left( {12 – y}
ight)x + {y^2} – 24y + 144 = 0$

$ Leftrightarrow {left( {x + 12 – y}
ight)^2} = 0 Leftrightarrow x = y – 12$

Thay vào phương trình đầu của hệ ta được:

${left( {y – 12}
ight)^2} + {y^2} + 4yleft( {y – 12}
ight) – 18left( {y – 12}
ight) – 22y + 31 = 0$

$ Leftrightarrow 8{y^2} – 112y + 391 = 0$

$ Leftrightarrow left< egin{array}{l}y = 7 – frac{1}{{2sqrt 2 }}\y = 7 + frac{1}{{2sqrt 2 }}end{array} ight. Rightarrow left< egin{array}{l}left{ egin{array}{l}x = – frac{1}{{2sqrt 2 }} – 5\y = – frac{1}{{2sqrt 2 }} + 7end{array} ight.\left{ egin{array}{l}x = frac{1}{{2sqrt 2 }} – 5\y = frac{1}{{2sqrt 2 }} + 7end{array} ight.end{array} ight.$

Bài tập rèn luyện

Bài 1. Giải hệ phương trình $left{ egin{array}{l}2{x^2} + xy – {y^2} – 5x + y + 2 = 0\{x^2} + {y^2} + x + y – 4 = 0end{array}
ight.$

Lời giải

Hệ phương trình đã cho tương đương với:

$left{ egin{array}{l}left( {x + y – 2}
ight)left( {2x – y – 1}
ight) = 0\{x^2} + {y^2} + x + y – 4 = 0end{array}
ight. Leftrightarrow left{ egin{array}{l}left< egin{array}{l}y = 2 – x\y = 2x – 1end{array} ight.\{x^2} + {y^2} + x + y – 4 = 0end{array} ight.$

$ Leftrightarrow left< egin{array}{l}left{ egin{array}{l}y = 2 – x\{x^2} + {y^2} + x + y – 4 = 0end{array} ight.\left{ egin{array}{l}y = 2x – 1\{x^2} + {y^2} + x + y – 4 = 0end{array} ight.end{array} ight. Leftrightarrow left< egin{array}{l}left{ egin{array}{l}x = 1\y = xend{array} ight.\left{ egin{array}{l}x = – frac{4}{5}\y = – frac{{13}}{5}end{array} ight.end{array} ight.$

Vậy hệ phương trình có hai nghiệm là $left( {x;y}
ight) = left( {1;1}
ight);left( { – frac{4}{5}; – frac{{13}}{5}}
ight)$

Bài 2.

Xem thêm: Nghị Luận Về Một Ý Kiến Bàn Về Văn Học – Giáo Án, Giáo Án Ngữ Văn 12

Giải hệ phương trình $left{ egin{array}{l}{x^2} – {y^2} – 2x + 2y + 3 = 0\{y^2} – 2xy + 2x + 4 = 0end{array}
ight.$

Lời giải

Nhận thấy $y = 1$ không thỏa mãn hệ phương trình

Xét $y
e 1$ rút $x = frac{{{y^2} + 4}}{{2y – 2}}$ từ phương trình thứ hai thay vào phương trình thứ nhất của hệ ta được:

${left( {frac{{{y^2} + 4}}{{2y – 2}}}
ight)^2} – {y^2} – 2.frac{{{y^2} + 4}}{{2y – 2}} + 2y + 3 = 0$

$ Leftrightarrow 3{y^4} – 12{y^3} – 4{y^2} + 32y – 44 = 0$

$ Leftrightarrow left( {{y^2} – 2y + 2}
ight)left( {3{y^2} – 6y – 22}
ight) = 0$

Kết luận

Nhìn chung, để giải hệ phương trình 2 ẩn số điều quan trọng nhất là phải xác định được dạng của phương trình. Thông thường đối với các dạng phương trình cơ bản chỉ cần áp dụng phương pháp cộng đại số và phương pháp thế là có thể giải quyết một cách nhanh chóng.

Xem thêm bài viết thuộc chuyên mục: Phương trình