Форум программистов, компьютерный форум, киберфорум
Наши страницы
Java GUI
Войти
Регистрация
Восстановить пароль
 
Seyan
0 / 0 / 0
Регистрация: 29.05.2018
Сообщений: 6
1

Решение квадратного уравнения с графическим интерфейсом

10.06.2018, 23:49. Просмотров 210. Ответов 3
Метки нет (Все метки)

В общем, суть проблемы такова:


Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
package javaapplication39;
import java.util.Scanner;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;
 
class MF{
    public MF(){
        JFrame f = new JFrame("MF");
        f.setVisible(true);
        float h,v,n,d,x1,x2;
        f.setBounds(400, 300, 400, 300);
        f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        
        final JLabel l = new JLabel("Введите  а б с" ,JLabel.CENTER);
        l.setBounds(35, 15, 200,20);
        final JTextField t = new JTextField(20);
        t.setBounds (60, 50, 30, 25);
        h = Float.parseFloat(t.getText());
        final JLabel y = new JLabel("x^2" ,JLabel.CENTER);
        y.setBounds (40, 20, 130, 85);
        final JTextField k = new JTextField(20);
        k.setBounds (120, 50, 30, 25);
        v = Float.parseFloat(k.getText());
        final JLabel u = new JLabel("x" ,JLabel.CENTER);
        u.setBounds (40, 20, 240, 85);
        final JTextField r = new JTextField(20);
        r.setBounds (180, 50, 30, 25);
        n = Float.parseFloat(r.getText());
        final JLabel i = new JLabel("=0" ,JLabel.CENTER);
        i.setBounds (40, 20, 360, 85);
        d = v*v - 4*h*n;
        x1 = (float) (( -v + Math.sqrt(d))/2*h);
        x2 = (float) (-v - Math.sqrt(d))/2*h;
        String x3 = Float.toString(x1);
        String x4 = Float.toString(x2);
        final JLabel o = new JLabel("ответ" ,JLabel.CENTER);
        o.setBounds(100, 150, 300,100);
        JButton b = new JButton ("Решить");
        b.setBounds(80, 200, 120, 40);
        b.addActionListener ( new ActionListener(){
            public void actionPerformed(ActionEvent e){
                
                o.setText("ответ  " +x3 +x4);
            }
        });
        
        f.add(l);
        f.add(t);
        f.add(b);
        f.add(k);
        f.add(r);
        f.add(y);
        f.add(i);
        f.add(u);
        f.add(o);
    }}
 
 
public class JavaApplication39 {
 
    
    public static void main(String[] args) {
        
       
        new MF();
        
        
    }
    
}
вот код моей программы, который должен выводит графический интерфейс и решение квадратного уравнения, прога не работает не знаю почему (попытался разобраться и пришел к выводу, что мешают строки h = Float.parseFloat(t.getText()); и т.д. но как по другому взять значение из поля ввода, мне не известно). Доработайте или подскажите, ибо всё облазил и так ничего и не нашел.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.06.2018, 23:49
Ответы с готовыми решениями:

JavaEclipse.Работа с графическим интерфейсом
Люди добрые! 1)Помогите создать форму размером 500х500 с нарисованным в ней...

Нужно оптимизировать код с графическим интерфейсом
У меня есть код которий вычисляет биномиальный коэффициент. Вот он: import...

Программа с графическим интерфейсом пользователя, которая в главном окне позволяет редактировать данные
Есть такая задача Разработать программу с графическим интерфейсом...

Написать программу(игру) Стамина,с системой ввода-вывода и с графическим интерфейсом
Написать программу(игру) Стамина(Stamina(typeracer)),с системой ввода-вывода и...

Решения квадратного уравнения(перевести на Java)
Очень нужно на завтра . Помогите с переводом с C++ на Java. Заранее благодарен:...

3
Alradalion
118 / 116 / 80
Регистрация: 13.09.2013
Сообщений: 437
11.06.2018, 01:29 2
Вам надо всю логику вычисления и получения значений из полей вынести в отдельный метод и вызывать его только тогда, когда нажата кнопка.
Для этого объявите JTextFieldы не локальными переменными, а полями класса. Далее, вынесите вычисления и взятие значение в отдельный метод. Пусть он возвращает полученную строку. И дергайте этот метод при нажатии кнопки
0
Seyan
0 / 0 / 0
Регистрация: 29.05.2018
Сообщений: 6
11.06.2018, 12:20  [ТС] 3
Можно ли пример программы?
0
Seyan
0 / 0 / 0
Регистрация: 29.05.2018
Сообщений: 6
18.06.2018, 01:59  [ТС] 4
Благодарю за совет, переправил все действия в актив кнопки, помогло)
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
 
package javaapplication39;
import java.util.Scanner;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;
/**
 *
 * @author Семен
 */
class MF{ 
    
    public MF(){
        
        JFrame f = new JFrame("MF");
        f.setVisible(true);
        
        f.setBounds(400, 300, 400, 300);
        f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        
        final JLabel l = new JLabel("Введите  а б с" ,JLabel.CENTER);
        l.setBounds(100, 15, 200,20);
        final JTextField t = new JTextField(20);
        t.setBounds (80, 50, 30, 25);
        
        
        final JLabel y = new JLabel("x^2" ,JLabel.CENTER);
        y.setBounds (60, 20, 130, 85);
        final JTextField k = new JTextField(20);
        k.setBounds (150, 50, 30, 25);
        
        
        final JLabel u = new JLabel("x" ,JLabel.CENTER);
        u.setBounds (75, 20, 240, 85);
        final JTextField r = new JTextField(20);
        r.setBounds (220, 50, 30, 25);
        
        
        final JLabel i = new JLabel("=0" ,JLabel.CENTER);
        i.setBounds (90, 20, 360, 85);
        
        
        
        
        
        final JLabel o = new JLabel("ответ будет здесь" ,JLabel.CENTER);
        o.setBounds(90, 150, 300,100);
        JButton b = new JButton ("Решить");
        b.setBounds(120, 200, 120, 40);
        b.addActionListener ( new ActionListener(){
            public void actionPerformed(ActionEvent e){
                float d, x1, x2,h,v,n,x;
                h = Float.parseFloat(t.getText());
                v = Float.parseFloat(k.getText());
                n = Float.parseFloat(r.getText());
                d = v*v - 4*h*n;
                if (d>0){
                x1 = (float) (( -v + Math.sqrt(d))/2*h);
                x2 = (float) (( -v - Math.sqrt(d))/2*h);
               
                o.setText("x1=" +x1 +"   " +"x2=" +x2);
                }
                if (d==0) {
                    x = (float) (-v/2*h);
                    o.setText ("x="+x);
                }
                if (d<0){
                    o.setText("x не существует");
                }
            }
        });
        
        f.add(l);
        f.add(t);
        f.add(b);
        f.add(k);
        f.add(r);
        f.add(y);
        f.add(i);
        f.add(u);
        f.add(o);
    }}
 
 
public class JavaApplication39 {
 
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        
       
        new MF();
        
        
    }
    
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.06.2018, 01:59

Программно реализовать нахождение корней уравнения методом дихотомии с простейшим графическим интерфейсом
вот консольный исходник на С++ Какую среду выбрать и тип java se/me/gui ...

Решение уравнения графическим способом
Помогите, пожалуйста! Требуется решить уравнение...

Решение уравнения графическим методом
Решение уравнения графическим методом (2 способа) как вообще это делать?...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru