Swing / AWT GCD калькулятор - PullRequest
       5

Swing / AWT GCD калькулятор

0 голосов
/ 13 января 2019

Я должен создать калькулятор в Java Swing / AWT, который вычисляет различные функции.

Например, ему нужно вычислить GCD.
Сначала я создал пользовательский интерфейс, а затем функцию actionPerformed, но когда я выполняю функцию gcd в графическом интерфейсе, экран зависает.

calculate2.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent e) {
            // Get values from text fields
            try {
                int a = Integer.parseInt(input1.getText());
                int b = Integer.parseInt(input2.getText());
                while (a != b) {
                    if(a > b)
                        a = a - b;
                    else
                        a = b - a;
                }

                String result1 = "" + (b);
                result.setText((result1));
            } catch (Exception f) {
                JOptionPane.showMessageDialog(rootPane, "ERROR: " + (f.getMessage()));
            }

            String aField = input1.getText();
            String bField = input2.getText();

            if (e.getSource() == calculate2) {

                if ("".equals(aField) || "".equals(bField)) {
                    String emptyFieldWarning;
                    emptyFieldWarning = "One or more fields is/are empty!";
                    JOptionPane.showMessageDialog(rootPane, emptyFieldWarning);
                }
            }
        }
    });

1 Ответ

0 голосов
/ 13 января 2019

В цикле while в ветви else оператор должен быть b = b - a

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...