Bài toán: Giải phương trình bậc 2
ax2 + bx +c=0
Input: Nhập vào 3 số: a,b,c
Xử lý:
Nếu a=0:
Nếu b=cũng bằng 0 thì xuất ra cho người dùng biết: phương trình vô nghiệm
Ngược lại thì phương trình có nghiệm: -c/b
Tính Δ=b^2 – 4ac:
TH1: Δ > 0 => Phương trình có 2 nghiệm:
TH2: Δ = 0 => Phương trình có nghiệm kép:
TH3: Δ < 0 => Phương trình vô nghiệm.
Output: phương trình vô ngiệm hoặc có ngiệm
Code
package ptbac2; import java.util.Scanner; public class PTBAC2 { public static void main(String[] args) { double a,b,c; Scanner input = new Scanner(System.in); System.out.println("Nhap he so a: "); a=input.nextDouble(); System.out.println("Nhap he so b: "); b=input.nextDouble(); System.out.println("Nhap he so c: "); c=input.nextDouble(); GiaiPTBac2(a,b,c); } public static void GiaiPTBac2(double a, double b, double c){ if(a==0){ if(b==0) System.out.println("Phương trình vô nghiệm!"); else System.out.println("Phương trình có một nghiệm: " + "x = " + (-c / b)); } double delta=b*b-4*a*c; double X1; double X2; if (delta > 0) { X1 = (double) ((-b + Math.sqrt(delta)) / (2*a)); X2 = (double) ((-b - Math.sqrt(delta)) / (2*a)); System.out.println("Phương trình có 2 nghiệm là: " + "X1 = " + X1 + " và X2 = " + X2); } else if (delta == 0) { X1 = (-b / (2 * a)); System.out.println("Phương trình có nghiệm kép: " + "X1 = X2 = " + X1); } else { System.out.println("Phương trình vô nghiệm!"); } } }
Mình chia sẽ code này đê các bạn tham khảo các vấn đề tương tự. Tuy nhiên các bạn nên tự làm lại, đừng nên copy. Nếu gặp vấn đề gì khó khăn, hoặc thắc mắc gì, các bạn có thể đặt câu hỏi ở cuối bài. Mình sẽ giải đáp.
Chúc các bạn thành công!