Phương trình bậc hai

0
702

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:x = \frac{-b\pm \sqrt{\Delta }}{2a}

TH2: Δ = 0 => Phương trình có nghiệm kép:

x = \frac{-b}{2a}

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!

This site uses Akismet to reduce spam. Learn how your comment data is processed.