Калькулятор ax2+bx+c - Java

Узнай цену своей работы

Формулировка задачи:

У меня есть код, не могу понять почему не работает кнопка 1(b1), не считает, хотя кнопка2(b2) работает, прошу о помощи, не пойму, что не так?
Листинг программы
  1. import javax.swing.*;
  2. import java.awt.*;
  3. import java.awt.event.*;
  4. public class Main extends JFrame {
  5. public static void main(String[] args) {
  6. EventQueue.invokeLater(new Runnable() {
  7. public void run() {
  8. Main window = new Main("Calculator");
  9. window.f1.setVisible(true);
  10. }
  11. });
  12. }
  13. JButton b1, b2;
  14. JTextField t1, t2, t3;
  15. JLabel l1;
  16. JFrame f1;
  17. double a, b, c, d, x1, x2;
  18. String s1, s2, s3;
  19. eHandler handler = new eHandler();
  20. public Main(String s) {
  21. super(s);
  22. f1 = new JFrame();
  23. f1.setBounds(100, 100, 300, 200);
  24. f1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  25. f1.getContentPane().setLayout(null);
  26. b1 = new JButton("Solve");
  27. b1.setBounds(0, 61, 284, 50);
  28. f1.getContentPane().add(b1);
  29. t1 = new JTextField();
  30. t1.setColumns(10);
  31. t1.setBounds(0, 39, 94, 20);
  32. f1.getContentPane().add(t1);
  33. b2 = new JButton("Clear");
  34. b2.setBounds(0, 112, 284, 50);
  35. f1.getContentPane().add(b2);
  36. t2 = new JTextField();
  37. t2.setColumns(10);
  38. t2.setBounds(96, 39, 94, 20);
  39. f1.getContentPane().add(t2);
  40. t3 = new JTextField();
  41. t3.setColumns(10);
  42. t3.setBounds(192, 39, 94, 20);
  43. f1.getContentPane().add(t3);
  44. JLabel l1 = new JLabel();
  45. l1.setBounds(3, 0, 281, 39);
  46. f1.getContentPane().add(l1);
  47. b1.addActionListener(handler);
  48. b2.addActionListener(handler);
  49. }
  50. public class eHandler implements ActionListener {
  51. public void actionPerformed(ActionEvent e) {
  52. if (e.getSource() == b1) {
  53. a = Double.parseDouble(t1.getText());
  54. b = Double.parseDouble(t2.getText());
  55. c = Double.parseDouble(t3.getText());
  56. d = (b*b) - (4*a*c);
  57. x1 = ((-b + Math.sqrt(d))/(2*a));
  58. x2 = ((-b - Math.sqrt(d))/(2*a));
  59. s1 = "x1 = " + x1;
  60. s2 = "x2 = " + x2;
  61. s3 = s1 + " " + s2;
  62. l1.setText(s3);
  63. }
  64. if (e.getSource() == b2) {
  65. t1.setText(null);
  66. t2.setText(null);
  67. t3.setText(null);
  68. l1.setText(null);
  69. }
  70. }
  71. }
  72. }

Решение задачи: «Калькулятор ax2+bx+c»

textual
Листинг программы
  1. l1 = new JLabel();
  2. l1.setBounds(3, 0, 281, 39);
  3. f1.getContentPane().add(l1);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 4.25 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут