Java 18. Giải phương trình bậc hai ax^2 + bx + c = 0



    Bản quyền thuộc về TITV.vn, 
    vui lòng không đăng tải lại nội dung từ trang này.

    Video giải thích chi tiết


     Code chi tiết 

    
    import java.util.Scanner;
    
    public class BaiTapGiaiPhuongTrinhBacHai {
    	public static void main(String[] args) {
    		// Phuong trinh bac 2: ax^2 + bx + c = 0
    		// Các biến cần có: a, b, c, x1, x2, delta
    		/*
    		 * Nếu a == 0 thì báo lỗi. B1. delta = b^2 - 4ac B2. Kiem tra delta 2.1. delta
    		 * <0 => Phương trình vô nghiệm 2.2. delta ==0 => Phương trình có nghiệm kép
    		 * x1=x2=-b/2a 2.3. delta>0 => Phuong trình có 2 nghiệm x1 =
    		 * (-b-sqrt(delta))/(2a) x2 = (-b+sqrt(delta))/(2a)
    		 */
    		double a, b, c, x1, x2, delta;
    		Scanner sc = new Scanner(System.in);
    
    		System.out.println("Nhap vao a = ");
    		a = sc.nextDouble();
    		System.out.println("Nhap vao b = ");
    		b = sc.nextDouble();
    		System.out.println("Nhap vao c = ");
    		c = sc.nextDouble();
    
    		delta = Math.pow(b, 2) - 4 * a * c;
    
    		if (a == 0) {
    			System.out.println("Nhập dữ liệu sai!");
    		} else {
    			if (delta < 0) {
    				// Tinh huong delta<0
    				System.out.println("Phương trình vô nghiệm!");
    			} else if (delta == 0) {
    				// Tinh huong delta==0
    				x1 = -b / (2 * a);
    				System.out.println("Phương trình có nghiệm kép x1=x2=" + x1);
    			} else {
    				// Tinh huong delta>0
    				x1 = (-b - Math.sqrt(delta)) / (2 * a);
    				x2 = (-b + Math.sqrt(delta)) / (2 * a);
    				System.out.println("Phương trình có nghiệm");
    				System.out.println("x1=" + x1);
    				System.out.println("x2=" + x2);
    			}
    		}
    	}
    }
    
    
         

    Bạn có thể thích những bài đăng này:

    Không có nhận xét nào:

    Đăng nhận xét