Cập nhật nội dung chi tiết về Java: Giải Phương Trình Bậc Nhất mới nhất trên website Asianhubjobs.com. Hy vọng thông tin trong bài viết sẽ đáp ứng được nhu cầu ngoài mong đợi của bạn, chúng tôi sẽ làm việc thường xuyên để cập nhật nội dung mới nhằm giúp bạn nhận được thông tin nhanh chóng và chính xác nhất.
Java: Giải phương trình bậc nhất
Đăng ký nhận thông báo về những video mới nhất
Đăng ký khóa học
Họ và tên bạn
*
: Số điện thoại
*
:
Email:
Thời gian học:
Sáng
Chiều
Tối
Lời nhắn:
Bài Toán Phương Trình Bậc Nhất Trong Java
Một bài toán cơ bản tiếp theo trong ngôn ngữ lập trình nói chung và lập trình Java nói riêng đó là phương trình bậc nhất. Bài học hôm nay mình sẽ hướng dẫn các bạn cách giải bài toán phương trình bậc nhất trong Java. Bài học nằm trong Serie lập trình Java căn bản.
Giải bài toán phương trình bậc nhất trong Java như thế nào?
Nếu bạn chưa cài đặt Eclipse có thể xem qua bài này : Hướng dẫn cài đặt jdk và Eclipse
Bạn nên tạo thói quen tạo từng Package cho mỗi phần học để quản lý dễ dàng hơn.
Bạn sẽ thấy Class mà bạn vừa tạo và việc của bạn bây giờ là viết code xử lý bài toán phương trình bậc nhất
Đây là màn hình ban đầu.
Phương pháp giải bài toán phương trình bậc nhất trong Java mình vẫn sẽ áp dụng phương pháp tách hàm giống như các bài toán tính chu vi và diện tích hình tam giác, hình tròn. Đây là phương pháp nên dùng và được sử dụng rất nhiều hiện nay, việc áp dụng tách hàm giúp bạn khi học đến lập trình hướng đối tượng bạn sẽ không còn lạ lẫm hay gặp quá nhiều khó khăn.
Mình tách thành 2 hàm NhapSoNguyen, GiaiPTbac1 và một phương thức main.
Bạn chạy chương trình, nhập vào hệ số phương trình sẽ thấy được kết quả:
Lời kết : Bài toán phương trình bậc nhất trong Java là một trong những bài toán cơ bản mà người mới học lập trình phải biết và viết được, vì vậy bạn nên tự tay viết từng dòng code để thành thục và nhớ lâu hơn. Bài học tới mình sẽ hướng dẫn các bạn cách giải bài toán phương trình bậc hai trong Java. Một trong những bài toán cổ điển mà bất kỳ ai mới học lập trình cũng phải trải qua.
Những bài bạn nên xem:
Câu lệnh điều kiện trong lập trình Java
Câu lệnh lặp trong lập trình Java
Tính chu vi và diện tích tam giác trong Java
Tính chu vi và diện tích hình tròn trong Java
Giải Phương Trình Bậc 2 Trong Java Swing
Đề bài
Viết chương trình giải phương trình bậc 2 trong java sử dụng Swing. Phương trình bậc 2 có dạng:
Lời giải
Thay vì sử dụng java.util.Scanner như trong bài giải phương trình bậc 2 trong java, bài này chúng ta sẽ sử dụng Swing để tạo giao diện window như sau:
Bài này được viết trên eclipse, bạn có thể tham khảo bài tạo chương trình java đầu tiên trên eclipse.
Tạo 3 lớp như sau:
PTB2View.java: lớp này extends lớp JFrame được sử dụng để tạo giao diện window.
PTB2.java: lớp này chứa hàm main() để khởi chạy chương trình.
Lớp PTB2View.java
package vn.viettuts.swing.ptb2; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JTextArea; import javax.swing.JTextField; public class PTB2View extends JFrame { private JTextField textFieldA; private JTextField textFieldB; private JTextField textFieldC; private JButton btnKetQua; private JTextArea textArea; public PTB2View() { setTitle("Java Swing - giải phương trình bậc 2"); JLabel labelHangSo = new JLabel("Hằng số:"); JLabel labelHangSoA = new JLabel("a:"); JLabel labelHangSoB = new JLabel("b:"); JLabel labelHangSoC = new JLabel("c:"); labelHangSo.setBounds(20, 20, 50, 20); labelHangSoA.setBounds(20, 50, 30, 20); labelHangSoB.setBounds(100, 50, 30, 20); labelHangSoC.setBounds(180, 50, 30, 20); textFieldA = new JTextField(); textFieldB = new JTextField(); textFieldC = new JTextField(); textFieldA.setBounds(40, 50, 40, 20); textFieldB.setBounds(120, 50, 40, 20); textFieldC.setBounds(200, 50, 40, 20); btnKetQua = new JButton("Kết Quả"); btnKetQua.setBounds(20, 80, 80, 30); textArea = new JTextArea(); textArea.setBounds(20, 120, 350, 150); add(labelHangSo); add(labelHangSoA); add(textFieldA); add(labelHangSoB); add(textFieldB); add(labelHangSoC); add(textFieldC); add(btnKetQua); add(textArea); setLayout(null); setSize(450, 400); setVisible(true); } public JTextField getTextFieldA() { return textFieldA; } public void setTextFieldA(JTextField textFieldA) { this.textFieldA = textFieldA; } public JTextField getTextFieldB() { return textFieldB; } public void setTextFieldB(JTextField textFieldB) { this.textFieldB = textFieldB; } public JTextField getTextFieldC() { return textFieldC; } public void setTextFieldC(JTextField textFieldC) { this.textFieldC = textFieldC; } public JButton getBtnKetQua() { return btnKetQua; } public void setBtnKetQua(JButton btnKetQua) { this.btnKetQua = btnKetQua; } public JTextArea getTextArea() { return textArea; } public void setTextArea(JTextArea textArea) { this.textArea = textArea; } }Lớp PTB2Controller.java
package vn.viettuts.swing.ptb2; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import javax.swing.JOptionPane; public class PTB2Controller implements ActionListener { private PTB2View view; private float hangsoA; private float hangsoB; private float hangsoC; public PTB2Controller(PTB2View view) { chúng tôi = view; view.getBtnKetQua().addActionListener(this); view.addWindowListener(new WindowAdapter() { @Override public void windowClosing(WindowEvent e) { System.exit(1); } }); } /** * Giải phương trình bậc 2: ax2 + bx + c = 0 * * @param a: hệ số bậc 2 * @param b: hệ số bậc 1 * @param c: số hạng tự do */ private static String giaiPTBac2(float a, float b, float c) { String ketqua = null; if (a == 0) { if (b == 0) { ketqua = "Phương trình vô nghiệm!"; } else { ketqua = "Phương trình có một nghiệm: " + "x = " + (-c / b); } } float delta = b*b - 4*a*c; float x1; float x2; x1 = (float) ((-b + Math.sqrt(delta)) / (2*a)); x2 = (float) ((-b - Math.sqrt(delta)) / (2*a)); ketqua = "Phương trình có 2 nghiệm là: " + "x1 = " + x1 + " và x2 = " + x2; } else if (delta == 0) { x1 = (-b / (2 * a)); ketqua = "Phương trình có nghiệm kép: " + "x1 = x2 = " + x1; } else { ketqua = "Phương trình vô nghiệm!"; } return ketqua; } private boolean validateHangSoA() { boolean isValid = false; try { if (!"".equals(view.getTextFieldA().getText())) { hangsoA = Float.parseFloat(view.getTextFieldA().getText()); isValid = true; } else { JOptionPane.showMessageDialog(view, "Hằng số a không được trống."); } } catch (NumberFormatException ex) { ex.printStackTrace(); JOptionPane.showMessageDialog(view, "Hằng số a không hợp lệ."); } return isValid; } private boolean validateHangSoB() { boolean isValid = false; try { if (!"".equals(view.getTextFieldB().getText())) { hangsoB = Float.parseFloat(view.getTextFieldB().getText()); isValid = true; } else { JOptionPane.showMessageDialog(view, "Hằng số b không được trống."); } } catch (NumberFormatException ex) { ex.printStackTrace(); JOptionPane.showMessageDialog(view, "Hằng số b không hợp lệ."); } return isValid; } private boolean validateHangSoC() { boolean isValid = false; try { if (!"".equals(view.getTextFieldC().getText())) { hangsoC = Float.parseFloat(view.getTextFieldC().getText()); isValid = true; } else { JOptionPane.showMessageDialog(view, "Hằng số c không được trống."); } } catch (NumberFormatException ex) { ex.printStackTrace(); JOptionPane.showMessageDialog(view, "Hằng số c không hợp lệ."); } return isValid; } @Override public void actionPerformed(ActionEvent e) { if (validateHangSoA() && validateHangSoB() && validateHangSoC()) { view.getTextArea().setText(giaiPTBac2(hangsoA, hangsoB, hangsoC)); } else { view.getTextArea().setText(""); } } public PTB2View getView() { return view; } public void setView(PTB2View view) { chúng tôi = view; } }Lớp PTB2.java
package vn.viettuts.swing.ptb2; public class PTB2 { public static void main(String[] args) { PTB2View view = new PTB2View(); PTB2Controller controller = new PTB2Controller(view); } }Kết quả:
Hiển thị ban đầu:
Nhập giá trị đúng cho các hằng số:
Nhập hằng số a không hợp lệ.
Không nhập hằng số a.
Hệ Phương Trình Bậc Nhất Hai Ẩn
Published on
Hệ Phương Trình Bậc Nhất Hai Ẩn Xem các bài viết khác tại: https://sites.google.com/site/toanhoctoantap/toan-tap-toan-9/he-phuong-trinh-bac-nhat-hai-an
1. GIA SƯ TÀI ĐỨC VIỆT – 0936 128 126 HỆ PHƯƠNG TRÌNH BẬC NHẤT HAI ẨN I/ KIẾN THỨC CẦN NHỚ: (𝐼) { 𝑎𝑥 + 𝑏𝑦 = 𝑐 ( 𝑑) (𝑎2 + 𝑏2 ≠ 0) 𝑎′ 𝑥 + 𝑏′ 𝑦 = 𝑐′( 𝑑′)(𝑎′2 + 𝑏′2 ≠ 0) TH1: Hệ (I) có một nghiệm (d) cắt (d’) 𝑎 𝑎′ ≠ 𝑏 𝑏′ (a’, b’ # 0) TH2: Hệ (I) vô nghiệm (d)
2. GIA SƯ TÀI ĐỨC VIỆT – 0936 128 126 b/ Với m = 2 thì hai hệ không tương đương với nhau. Giải Chú ý: Hai hệ phương trình gọi là tương đương nhau nếu tập nghiệm của chúng bằng nhau. a/ Với m = 4. Ta có: (I) { 2𝑥 + 2𝑦 = 4 𝑥 + 𝑦 = 6 ↔ { 𝑥 + 𝑦 = 2 𝑥 + 𝑦 = 6 Và (II) { 𝑥 − 𝑦 = 2 4𝑥 − 4𝑦 = 12 ↔ { 𝑥 − 𝑦 = 2 𝑥 − 𝑦 = 3 Thấy hai hệ này đều vô nghiệm nên suy ra chúng tương đương nhau. b/ Với m = 2. Ta có: (I) Trở thành { 2𝑥 + 2𝑦 = 2 𝑥 + 𝑦 = 6 ↔ { 𝑥 + 𝑦 = 1 𝑥 + 𝑦 = 6 hệ này vô nghiệm (1) (II) trở thành { 𝑥 − 𝑦 = 2 2𝑥 − 4𝑦 = 12 ↔ { 𝑦 = 𝑥 − 2 𝑦 = 1 2 𝑥 − 3 Hai đường thẳng y = x – 2 và y = 1 2 𝑥 − 3 có hệ số góc khác nhau (1 # 1 2 ) nên chúng cắt nhau. Hệ (II) có một nghiệm duy nhất (2) Từ (1) và (2) suy ra hai hệ (I) và (II) không tương đương nhau khi m = 2 Ví Dụ 2: Cho hai hệ phương trình { 2𝑥 − 𝑦 = 4 −𝑥 + 3𝑦 = 3 (I) và { 𝑚𝑥 − 𝑦 = 4 2𝑥 + 𝑛𝑦 = 16 (II) a/ Hãy tìm nghiệm của hệ (I) bằng cách vẽ đồ thị của hai đường thẳng trong hệ. b/ Tìm m và n để hệ (I) và (II) tương đương nhau. Giải a/ Đường thẳng (d): 2x – y = 4 đi qua hai điểm (0; -4) và (2; 0).
3. GIA SƯ TÀI ĐỨC VIỆT – 0936 128 126 Đường thẳng (d’): -x + 3y = 3 đi qua hai điểm (0; 1) và(-3;0) Hai đường thẳng đó cắt nhau tại M(3; 2) Nghiệm của hệ (I) là (3; 2) b/ Để hệ (I) và (II) tương đương với nhau thì hệ (II) bắt buộc phải nhận nghiệm (3; 2) là nghiệm duy nhất. Thay x = 3; y = 2 vào hệ (II) được: { 3𝑚 − 2 = 4 6 + 2𝑛 = 16 ↔ { 𝑚 = 2 𝑛 = 5 Với m = 2 và n = 5 hệ (I) trở thành { 3𝑥 − 𝑦 = 4 2𝑥 + 5𝑦 = 16 dễ dàng kiểm tra hệ này có nghiệm duy nhất. Vậy với m = 2 và n = 5 hệ (I) và (II) tương đương nhau. Ví Dụ 3: Cho hệ phương trình: (I) { 2𝑥 = 4 −3𝑥 + 4𝑦 = −2 a/ Hãy đoán số nghiệm của hệ (I) b/ Tìm tập nghiệm của hệ (I) bằng phương pháp đồ thị.
4. GIA SƯ TÀI ĐỨC VIỆT – 0936 128 126 c/ Vẽ thêm đường thằng x + 2y = 4 trên cùng hệ trục tọa độ. Có nhận xét gì về nghiệm của hệ phương trình (II) { 𝑥 + 2𝑦 = 4 −3𝑥 + 4𝑦 = −2 ? Hãy giải hệ (II) bằng phương pháp thế để kiểm tra. Giải a/ Hệ có nghiệm duy nhất vì đường thằng (d1): 2x = 4 song song với trục tung còn đường thẳng (d2): -3x + 4y = – 2 không song song với trục tọa độ nào nên, (d1) và (d2) cắt nhau. b/ Hai đường thẳng (d1) và (d2) cắt nhau tại điểm M(2; 1) nên hệ (I) có nghiệm duy nhất là (2; 1). c/ Đường thẳng (d3): x + 2y = 4 đi qua M(2; 1) và (4; 0) nên (2; 1) cũng là nghiệm duy nhất của hệ (II). Giải hệ (II) bằng phương pháp thế: (II) { 𝑥 = −2𝑦 + 4 −3(−2𝑦+ 4) + 4𝑦 = −2 ↔ { 𝑥 = −2𝑦 + 4 10𝑦 − 12 = −2 ↔ { 𝑥 = −2𝑦 + 4 𝑦 = 1 ↔ { 𝑥 = 2 𝑦 = 1 Ví Dụ 4: Giải hệ phương trình: { 𝑥 − 2𝑦 = 1 ( 𝑚2 + 2) 𝑥 − 6𝑦 = 3𝑚 trong các trường hợp: a/ m = -1 b/ m = 0
6. GIA SƯ TÀI ĐỨC VIỆT – 0936 128 126 ↔ {√3𝑥 = −𝑦 + √2 𝑦 = 1 ↔ {√3𝑥 = −1 + √2 𝑦 = 1 ↔ { 𝑥 = √2−1 √3 𝑦 = 1 b/ HPT: { √6𝑥 + √2𝑦 = 2 𝑥 √2 − 𝑦 √3 = − 1 √6 ↔ { √3𝑥 + 𝑦 = √2 √3𝑥 − √2𝑦 = −1 ↔ { √3𝑥 + 𝑦 = √2 (1 + √2)𝑦 = 1 + √2 (trừ vế với vế của phương trình thứ nhất cho phương trình thứ hai) ↔ {√3𝑥 = √2 − 1 𝑦 = 1 ↔ { 𝑥 = √2−1 √3 𝑦 = 1 Ví Dụ 6: Cho hệ phương trình: { 𝑥 4 + 𝑦 3 = 1 2 0,25𝑥 + 0,5𝑦 = 1 ( 𝐼) 𝑣à { √2𝑎𝑥 + √3𝑏𝑦 = 5 −√3𝑎𝑥 + √2𝑏𝑦 = 5√6 (𝐼𝐼) a/ Giải hệ (I) bằng phương pháp cộng đại số. b/ Biết hệ (I) và (II) tương đương nhau. Tìm các hệ số a và b. Giải a/ (I) { 3𝑥 + 4𝑦 = 6 𝑥 + 2𝑦 = 4 ↔ { 3𝑥 + 4𝑦 = 6 2𝑥 + 4𝑦 = 8 ↔ {3𝑥 + 4𝑦 = 6 𝑥 = −2 ↔ { 𝑥 = −2 𝑦 = 3 b/ Do (I) (II) nên (-2; 3) cũng là nghiệm duy nhất của hệ (II). Do đó ta có: { −2√2𝑎 + 3√3𝑏 = 5 2√3𝑎 + 3√2𝑏 = 5√6 ↔ {−4𝑎 + 3√6𝑏 = 5√2 6𝑎 + 3√6𝑏 = 15√2 ↔ { 10𝑎 = 10√2 6𝑎 + 3√6𝑏 = 15√2 ↔ { 𝑎 = √2 6√2 + 3√6𝑏 = 15√2 ↔ { 𝑎 = √2 3√6𝑏 = 9√2 ↔ { 𝑎 = √2 𝑏 = √3
Recommended
Bạn đang đọc nội dung bài viết Java: Giải Phương Trình Bậc Nhất trên website Asianhubjobs.com. Hy vọng một phần nào đó những thông tin mà chúng tôi đã cung cấp là rất hữu ích với bạn. Nếu nội dung bài viết hay, ý nghĩa bạn hãy chia sẻ với bạn bè của mình và luôn theo dõi, ủng hộ chúng tôi để cập nhật những thông tin mới nhất. Chúc bạn một ngày tốt lành!