Dùng thủ tục giải phương trình bậc 2 ax2+ bx + c=0

60 điểm

NguyenChiHieu

Viết chương trình giải phương trình bậc hai với yêu cầu sử dụng các chương trình con để giải quyết các trường hợp xãy ra của delt
a.

Tổng hợp câu trả lời [1]

Program Giai_PT_bac_hai; uses crt; var a,b,c,delta:real; {----------------------} Procedure delta_duong; begin write['Phuong trinh co hai nghiem x1=',[-b+sqrt[delta]]/[2*a],'x2=',[-b+sqrt[delta]]/[2*a]]; end; {---------------------} Procedure delta_khong; begin write['Phuong trinh co nghiem kep x=',-b/[2*a]:3:1]; end; {--------------------} Procedure delta_am; begin writeln['Phuong trinh vo nghiem']; end; {Chuong trinh chinh} Begin clrscr; write['Nhap a: '];readln[a]; write['Nhap b: '];readln[b]; write['Nhap c: '];readln[c]; delta:=b*b-4*a*c; if delta>0 then delta_duong else if delta = 0 then delta_khong else delta_am; readln end.

Tham khảo giải bài tập hay nhất

Loạt bài Lớp 11 hay nhất

xem thêm

Viết chương trình giải phương trình bậc hai với yêu cầu sử dụng các chương trình con để giải quyết các trường hợp xãy ra của delta.

Cấu trúc chung của một chương trình có sử dụng ctc

PROGRAM  Tên_chương_trình;

USES CRT;

CONST  ............;

VAR       ............;

PROCEDURE  THUTUC[[Các tham số]];

[Khai báo Const, Var]

BEGIN

          ..............

END;

FUNCTION  HAM[[Các tham số]]:;

[Khai báo Const, Var]

BEGIN

          ..............

          HAM:=;

END;

BEGIN {Chương trình chính}

          ...................

          THUTUC[[...]];

          ...................

          A:= HAM[[...]];

          ...................

END.

Chương trình con [CTC] là một đoạn chương trình thực hiện trọn vẹn hay một chức năng nào đó.   Trong Turbo Pascal, có 2 dạng CTC:

  • Thủ tục [PROCEDURE]: Dùng để thực hiện một hay nhiều nhiệm vụ nào đó.
  • Hàm [FUNCTION]: Trả về một giá trị nào đó [có kiểu vô hướng, kiểu string]. Hàm có thể sử dụng trong các biểu thức.

Ngoài ra, trong Pascal còn cho phép các CTC lồng vào nhau.

Trong quá trình xây dựng CTC, khi nào thì nên dùng thủ tục/hàm?

Dùng hàm

Dùng thủ tục

- Kết quả của bài toán trả về 1 giá trị duy nhất [kiểu vô hướng, kiểu string].

- Lời gọi CTC cần nằm trong các biểu thức tính toán.

- Kết quả của bài toán không trả về giá trị nào hoặc trả về nhiều giá trị hoặc trả về  kiểu dữ liệu có cấu trúc [Array, Record, File].

- Lời gọi CTC không nằm trong các biểu thức tính toán.

Program Giai_PT_bac_hai; uses crt; var a,b,c,delta:real; {----------------------} Procedure delta_duong; begin write['Phuong trinh co hai nghiem x1=',[-b+sqrt[delta]]/[2*a],'x2=',[-b+sqrt[delta]]/[2*a]]; end; {---------------------} Procedure delta_khong; begin write['Phuong trinh co nghiem kep x=',-b/[2*a]:3:1]; end; {--------------------} Procedure delta_am; begin writeln['Phuong trinh vo nghiem']; end; {Chuong trinh chinh} Begin clrscr; write['Nhap a: '];readln[a]; write['Nhap b: '];readln[b]; write['Nhap c: '];readln[c]; delta:=b*b-4*a*c; if delta>0 then delta_duong else if delta = 0 then delta_khong else delta_am; readln end.

Nhận xét: Chương trình con cho phép chia nhỏ công việc nhằm đơn giản hoá. Ngoài ra một công việc nào đó lặp lại nhiều lần trong chương trình nên dùng CTC vì khi đó mã chương trình sẽ gọn, dễ theo dõi, gỡ rối hơn.

Phương trình bậc 2 là phương trình có dạng ax2+bx+c=0 [a≠0] [1].

Giải phương trình bậc 2 là đi tìm các giá trị của x sao cho khi thay x vào phương trình [1] thì thỏa mãn ax2+bx+c=0

Giải phương trình bậc 2

Bước 1: Tính Δ=b2-4ac

Bước 2: So sánh Δ với 0

  • Δ < 0 => phương trình [1] vô nghiệm
  • Δ = 0 => phương trình [1] có nghiệm kép 
  • Δ > 0 => phương trình [1] có 2 nghiệm phân biệt, ta dùng công thức nghiệm sau:

 và 

Mẹo nhẩm nghiệm phương trình bậc 2 nhanh:

  • Nếu a+b+c=0 thì x1 = 1, x2 = c/a
  • Nếu a-b+c=0 thì x1 = -1, x2 = -c/a

Ví dụ giải phương trình bậc hai

Giải phương trình 4x2 – 2x – 6 = 0 [2]

Δ=[-2]2 – 4.4.[-6] = 4 + 96 = 100 > 0 => phương trình [2] đã cho có 2 nghiệm phân biệt.

 và 

Bạn cũng có thể nhẩm theo cách nhẩm nghiệm nhanh, vì nhận thấy 4-[-2]+6=0, nên x1 = -1, x2 = -c/a = -[-6]/4=3/2. Nghiệm vẫn giống ở trên.

Giải phương trình 2x2 – 7x + 3 = 0 [3]

Tính Δ = [-7]2 – 4.2.3 = 49 – 24= 25 > 0 => [3] có 2 nghiệm phân biệt:

 và 

Để kiểm tra xem bạn đã tính nghiệm đúng chưa rất dễ, chỉ cần thay lần lượt x1, x2 vào phương trình 3, nếu ra kết quả bằng 0 là chuẩn. Ví dụ thay x1, 2.32-7.3+3=0.

Giải phương trình 3x2 + 2x + 5 = 0 [4]

Tính Δ = 22 – 4.3.5 = -56 < 0 => phương trình [4] vô nghiệm.

Giải phương trình x2 – 4x +4 = 0 [5]

Tính Δ = [-4]2 – 4.4.1 = 0 => phương trình [5] có nghiệm kép:

Thực ra nếu nhanh ý, bạn cũng có thể nhìn ra đây chính là hằng đẳng thức đáng nhớ [a-b]2 = a2 – 2ab + b2 nên dễ dàng viết lại [5] thành [x-2]2 = 0 x=2.

🔢 GIA SƯ TOÁN

Phân tích thành nhân tử

Nếu phương trình [1] có 2 nghiệm phân biệt x1, x2, lúc nào bạn cũng có thể viết nó về dạng sau: ax2 + bx + c = a[x-x1][x-x2] = 0.

Trở lại với phương trình [2], sau khi tìm ra 2 nghiệm x1, x2 bạn có thể viết nó về dạng: 4[x-3/2][x+1]=0.

Đi liền với phương trình bậc 2 còn có định lý Vi-et với rất nhiều ứng dụng như tính nhẩm nghiệm phương trình bậc 2 đã nói ở trên, tìm 2 số khi biết tổng và tích, xác định dấu của các nghiệm, hay phân tích thành nhân tử. Đây đều là những kiến thức cần thiết sẽ gắn liền với bạn trong quá trình học đại số, hay các bài tập giải và biện luận phương trình bậc 2 sau này, nên cần ghi nhớ kỹ và thực hành cho nhuần nhuyễn.

Phương trình bậc 2 một ẩn

Cho phương trình sau: ax2+bx+c=0 [a≠0], được gọi là phương trình bậc 2 với ẩn là x.

Công thức nghiệm: Ta gọi Δ=b2-4ac.Khi đó:

  • Δ>0: phương trình tồn tại 2 nghiệm:.
  • Δ=0, phương trình có nghiệm kép x=-b/2a
  • Δ0: phương trình có 2 nghiệm phân biệt.
  • Δ’=0: phương trình có nghiệm kép x=-b’/a
  • Δ’0, hai nghiệm cùng dương.
  • P0, nghiệm là:
  • Nếu -c/a=0, nghiệm x=0
  • Nếu -c/a0 ⇔ m≠-5/2, phương trình có 2 nghiệm phân biệt:

Xác định điều kiện tham số để nghiệm thỏa yêu cầu đề bài.

Phương pháp: để nghiệm thỏa yêu cầu đề bài, trước tiên phương trình bậc 2 phải có nghiệm. Vì vậy, ta thực hiện theo các bước sau:

  • Tính Δ, tìm điều kiện để Δ không âm.
  • Dựa vào định lý Viet, ta có được các hệ thức giữa tích và tổng, từ đó biện luận theo yêu cầu đề.

Ví dụ 5: Cho phương trình x2+mx+m+3=0 [*]. Tìm m để phương trình [*] có 2 nghiệm thỏa mãn:

Hướng dẫn:

Để phương trình [*] có nghiệm thì:

Khi đó, gọi x1 và x2 là 2 nghiệm, theo định lý Viet:

Mặt khác:

Theo đề:

Thử lại:

  • Khi m=5, Δ=-7 0 [nhận]

vậy m = -3 thỏa yêu cầu đề bài.

Lịch sử

Ngay từ năm 2000 trước Công Nguyên, các nhà toán học Babylon đã có thể giải những bài toán liên quan đến diện tích và các cạnh của hình chữ nhật. Có bằng chứng chỉ ra thuật toán này xuất hiện từ triều đại Ur thứ ba. Theo ký hiệu hiện đại, các bài toán này thường liên quan đến việc giải hệ gồm hai phương trình:{\displaystyle x+y=p,\ \ xy=q}

tương đương với phương trình:

Các bước giải được người Babylon đưa ra như sau:

  1. Tính p/2.
  2. Bình phương kết quả tìm được.
  3. Trừ đi q.
  4. Tính căn bậc hai bằng bảng căn bậc hai.
  5. Cộng kết quả của bước [1] và [4] để tìm x. Điều này về cơ bản là tương đương với việc tính 

Ở Babylon, Ai Cập, Hy Lạp, Trung Quốc, và Ấn Độ, phương pháp hình học được sử dụng để giải phương trình bậc hai. Tài liệu Berlin Papyrus của người Ai Cập có từ thời Trung vương quốc [từ năm 2050 đến 1650 trước CN] có chứa lời giải của phương trình bậc hai hai số hạng.[14] Trong nguyên bản kinh Sulba Sutras, khoảng thế kỷ 8 trước CN, phương trình bậc hai dạng ax2 = c và ax2 + bx = c được khảo sát bằng phương pháp hình học. Các nhà toán học Babylon từ khoản năm 400 trước CN và các nhà toán học Trung Quốc từ khoảng năm 200 trước CN đã sử dụng phương pháp phân chia hình học để giải các phương trình bậc hai với nghiệm dương.[15][16] Cuốn Cửu chương toán thuật của người Trung Quốc có ghi những quy tắc của phương trình bậc hai.[16][17] Trong những phương pháp hình học thuở đầu này không xuất hiện một công thức tổng quát. Tới khoảng năm 300 trước CN, nhà toán học Hy Lạp Euclid đã cho ra một phương pháp hình học trừu tượng hơn. Với cách tiếp cận hoàn toàn bằng hình học, Pythagoras và Euclid đã tạo dựng một phương pháp tổng quan để tìm nghiệm của phương trình bậc hai. Trong tác phẩm Arithmetica của mình, nhà toán học Hy Lạp Diophantus đã giải phương trình bậc hai, tuy nhiên chỉ cho ra một nghiệm, kể cả khi cả hai nghiệm đều là dương.[18]

Vào năm 628 CN, Brahmagupta, một nhà toán học Ấn Độ đưa ra lời giải rõ ràng đầu tiên [dù vẫn chưa hoàn toàn tổng quát] cho phương trình bậc hai ax2 + bx = c như sau: “Nhân số tuyệt đối [c] với bốn lần hệ số bình phương, cộng với bình phương hệ số số hạng ở giữa; căn bậc hai toàn bộ, trừ đi hệ số số hạng ở giữa, rồi chia cho hai lần hệ số bình phương là giá trị.” [Brahmasphutasiddhanta, Colebrook translation, 1817, tr 346][13]:87 Điều này tương đương:

Thủ bản Bakhshali ra đời ở Ấn Độ vào thế kỷ 7 CN có chứa một công thức đại số cho việc giải phương trình bậc hai, cũng như những phương trình vô định. Muhammad ibn Musa al-Khwarizmi đi xa hơn trong việc cung cấp một lời giải đầy đủ cho phương trình bậc hai dạng tổng quát,[19] ông cũng đã mô tả phương pháp phần bù bình phương và thừa nhận rằng biệt thức phải dương,[19][20]:230 điều đã được ‘Abd al-Hamīd ibn Turk [Trung Á, thế kỷ 9] chứng minh. Turk là người đưa ra những biểu đồ hình học chứng minh rằng nếu biệt thức âm thì phương trình bậc hai vô nghiệm.[20]:234 Trong khi bản thân al-Khwarizmi không chấp nhận nghiệm âm, các nhà toán học Hồi giáo kế tục ông sau này đã chấp nhận nghiệm âm cũng như nghiệm vô tỉ.[19]:191[21] Cá biệt Abū Kāmil Shujā ibn Aslam [Ai Cập, thế kỷ 10] là người đầu tiên chấp nhận các số vô tỉ [thường ở dạng căn bậc hai, căn bậc ba hay căn bậc bốn] là nghiệm hay là hệ số của phương trình bậc hai.[22] Nhà toán học Ấn Độ thế kỷ thứ 9 Sridhara đã viết ra các quy tắc giải phương trình bậc hai.[23]

Nhà toán học người Do Thái Abraham bar Hiyya Ha-Nasi [thế kỷ 12, Tây Ban Nha] là tác giả cuốn sách đầu tiên của người châu Âu có chứa lời giải đầy đủ cho phương trình bậc hai dạng tổng quát.[24] Giải pháp của Ha-Nasi dựa nhiều vào tác phẩm của Al-Khwarizmi.[19] Lần đầu tiên hệ số âm của ‘x’ xuất hiện trong tác phẩm của nhà toán học người Trung Quốc Yang Hui [1238–1298 CN], dù vậy ông cho điều này là từ nhà toán học Liu Yi ở thời trước đó.[25] Vào năm 1545 Gerolamo Cardano biên soạn các tác phẩm liên quan đến phương trình bậc hai. Công thức nghiệm cho mọi trường hợp lần đầu đạt được bởi Simon Stevin vào năm 1594.[26] Năm 1637 René Descartes công bố tác phẩm La Géométrie trong đó có chứa công thức nghiệm mà chúng ta biết ngày nay. Lời giải tổng quát xuất hiện lần đầu trong tài liệu toán học hiện đại vào năm 1896, bởi Henry Heaton.

Video liên quan

Chủ Đề