Trong chương trình này, bạn sẽ học cách tìm tất cả các nghiệm nguyên của phương trình bậc hai (tùy thuộc vào định thức) và in chúng bằng định dạng () trong Kotlin.
Dạng chuẩn của phương trình bậc hai là:
ax 2 + bx + c = 0, trong đó a, b và c là các số thực và a ≠ 0
Thuật ngữ này được gọi là định thức của một phương trình bậc hai. Yếu tố quyết định nói lên bản chất của rễ.b2-4ac
- Nếu định thức lớn hơn 0, các gốc là thực và khác.
- Nếu định thức bằng 0, các căn là thực và bằng nhau.
- Nếu định thức nhỏ hơn 0, các gốc phức tạp và khác nhau.
Ví dụ: Chương trình Kotlin để tìm gốc của phương trình bậc hai
fun main(args: Array) ( val a = 2.3 val b = 4 val c = 5.6 val root1: Double val root2: Double val output: String val determinant = b * b - 4.0 * a * c // condition for real and different roots if (determinant> 0) ( root1 = (-b + Math.sqrt(determinant)) / (2 * a) root2 = (-b - Math.sqrt(determinant)) / (2 * a) output = "root1 = %.2f and root2 = %.2f".format(root1, root2) ) // Condition for real and equal roots else if (determinant == 0.0) ( root2 = -b / (2 * a) root1 = root2 output = "root1 = root2 = %.2f;".format(root1) ) // If roots are not real else ( val realPart = -b / (2 * a) val imaginaryPart = Math.sqrt(-determinant) / (2 * a) output = "root1 = %.2f+%.2fi and root2 = %.2f-%.2fi".format(realPart, imaginaryPart, realPart, imaginaryPart) ) println(output) )
Khi bạn chạy chương trình, đầu ra sẽ là:
root1 = -0.87 + 1.30i và root2 = -0.87-1.30i
Trong chương trình trên, các hệ số a, b và c được đặt lần lượt là 2.3, 4 và 5.6. Sau đó, giá trị determinant
được tính là .b2 - 4ac
Dựa trên giá trị của định thức, các gốc được tính như cho trong công thức trên. Lưu ý rằng chúng tôi đã sử dụng hàm thư viện Math.sqrt () để tính căn bậc hai của một số.
Đầu ra được in sau đó được lưu trữ trong một đầu ra biến chuỗi sử dụng hàm libary tiêu chuẩn của Kotlin format()
. Đầu ra sau đó được in bằng cách sử dụng println()
.
Đây là mã Java tương đương của chương trình trên: Chương trình Java để tìm tất cả các gốc của một phương trình Quadractic