Viết chương trình giải phương trình bậc 2



Đề bài: Viết chương trình sử dụng ngôn ngữ lập trình Java để giải và biện luận phương trình bậc 2
Yêu cầu kiến thức:

  • Xác định chính xác kiểu dữ liệu cho các biến
  • Biết sử dụng thư viện Scanner để nhập liệu dữ liệu từ bàn phím

Code tham khảo dưới đây được viết trên JDK ver 8.x:


package timoday;

import java.util.Scanner;

public class PTB2 {

    public static void main(String[] args) {
	// Tạo đối tượng sc từ lớp Scanner để cho phép nhập liệu từ bàn phím
	Scanner sc = new Scanner(System.in);

	// Khai báo biến
	double a, b, c, x1, x2, del;

	// Nhập hệ số
	System.out.print("Nhập vào hệ số a = ");
	a = sc.nextDouble();
	System.out.print("Nhập vào hệ số b = ");
	b = sc.nextDouble();
	System.out.print("Nhập vào hệ số c = ");
	c = sc.nextDouble();

	// Giải và biện luận phương trình bậc 2
	if (a == 0) {
	    if (b == 0) {
		if (c == 0) {
		    System.out.println("Phương trình vô số nghiệm!");
		} else {
		    System.out.println("Phương trình vô nghiệm!");
		}
	    } else {
		System.out.println("Phương trình có nghiệm là: " + (-c / b));
	    }
	} else { // Trường hợp a != 0
	    // Tính giá trị delta
	    del = b * b - 4 * a * c;
	    if (del < 0) {
		System.out.println("Phương trình vô nghiệm!");
	    } else if (del == 0) {
		x1 = x2 = -b / (2 * a);
		System.out.println("Phương trình có nghiệm kép: " + x1);
	    } else {
		x1 = (-b + Math.sqrt(del)) / (2 * a);
		x2 = (-b - Math.sqrt(del)) / (2 * a);
		System.out.println("Phương trình có 2 nghiệm phân biệt là:\nx1 = " + x1 + "\nx2 = " + x2);
	    }
	}
		
	sc.close();
    }

}


Kết luận:

  • Bạn có thể tham khảo thêm khóa học lập trình C từ cơ bản đến nâng cao. Xem tại đây
  • Bạn có thể tham khảo thêm khóa học Thành thạo lập trình C#. Xem tại đây

Có thể bạn sẽ thích…

Trả lời

EnglishVietnamese