NỘI DUNG BÀI VIẾT
Trong bài viết này, tôi sẽ giúp bạn học cách viết một chương trình để giải phương trình bậc 2 JavaScript.
Trước tiên vào bài viết này, bạn nên có kiến thức về các chủ đề lập trình JavaScript sau:
- Câu lệnh điều kiện If – else trong JavaScript
- JavaScript Math sqrt ()

Chương trình này tính toán các nghiệm nguyên của một phương trình bậc 2 khi biết các hệ số của nó.
Dạng chuẩn của phương trình bậc 2 là:
ax2 + bx + c = 0, where
a, b and c are real numbers and
a ≠ 0
Để tìm nghiệm nguyên của phương trình như vậy, tôi sử dụng công thức:
(root1,root2) = (-b ± √b2-4ac)/2
Thuật ngữ b2-4ac
này được gọi là phân biệt của một phương trình bậc 2. Nó nói lên bản chất của căn bậc 2.
- Nếu biệt số lớn hơn 0 , các căn bậc 2 là số thực và khác nhau.
- Nếu biệt số bằng 0 thì các căn là số thực và bằng nhau.
- Nếu biệt số nhỏ hơn 0 , các gốc phức tạp và khác nhau.

Ví dụ: Căn của một phương trình bậc 2
// program to solve quadratic equation
let root1, root2;
// take input from the user
let a = prompt("Enter the first number: ");
let b = prompt("Enter the second number: ");
let c = prompt("Enter the third number: ");
// calculate discriminant
let discriminant = b * b - 4 * a * c;
// condition for real and different roots
if (discriminant > 0) {
root1 = (-b + Math.sqrt(discriminant)) / (2 * a);
root2 = (-b - Math.sqrt(discriminant)) / (2 * a);
// result
console.log(`The roots of quadratic equation are ${root1} and ${root2}`);
}
// condition for real and equal roots
else if (discriminant == 0) {
root1 = root2 = -b / (2 * a);
// result
console.log(`The roots of quadratic equation are ${root1} and ${root2}`);
}
// if roots are not real
else {
let realPart = (-b / (2 * a)).toFixed(2);
let imagPart = (Math.sqrt(-discriminant) / (2 * a)).toFixed(2);
// result
console.log(
`The roots of quadratic equation are ${realPart} + ${imagPart}i and ${realPart} - ${imagPart}i`
);
}
Code language: JavaScript (javascript)
Đầu ra số 1
Enter the first number: 1
Enter the second number: 6
Enter the third number: 5
The roots of quadratic equation are -1 and -5
Các giá trị đầu vào trên thỏa mãn điều kiện if
đầu tiên. Ở đây, giá trị biệt số sẽ lớn hơn 0 và code tương ứng được thực thi.
Đầu ra 2
Enter the first number: 1
Enter the second number: -6
Enter the third number: 9
The roots of quadratic equation are 3 and 3
Các giá trị đầu vào trên thỏa mãn điều kiện else if
. Ở đây, giá trị biệt số sẽ bằng 0 và code tương ứng được thực thi.
Đầu ra 3
Enter the first number: 1
Enter the second number: -3
Enter the third number: 10
The roots of quadratic equation are 1.50 + 2.78i and 1.50 - 2.78i
Code language: CSS (css)
Trong đầu ra ở trên, biệt số sẽ nhỏ hơn 0 và code tương ứng được thực thi.
Kết luận

Trong chương trình trên, phương pháp Math.sqrt()
này được sử dụng giúp bạn giải phương trình bậc 2 JavaScript để tìm ra căn bậc 2 của một số. Bạn có thể thấy điều đó cũng được sử dụng trong chương trình toFixed(2)
. Điều này giúp làm tròn số thập phân thành hai giá trị thập phân.
Và 1 lần nữa, chương trình trên sử dụng một câu lệnh if...else
. Nếu bạn muốn tìm hiểu thêm về các câu lệnh if...else
, hãy nhấp chuột đến Câu lệnh điều kiện If – else trong JavaScript.
Cảm ơn bạn đã theo dõi bài viết!
Các bạn có thể tham khảo các bài viết hay về JavaScript tại đây.
Hãy tham gia nhóm Học lập trình để thảo luận thêm về các vấn đề cùng quan tâm.
TỔNG HỢP TÀI LIỆU HỌC LẬP TRÌNH CƠ BẢN CHO NGƯỜI MỚI BẮT ĐẦU
KHOÁ HỌC BOOTCAMP JAVA/JAVASCRIPT/PHP TRỞ THÀNH LẬP TRÌNH VIÊN TRONG 5-6 THÁNG