package rovnicekva;
import java.awt.*;
import java.awt.event.*;
import java.text.*;
import javax.swing.*;
public class RovniceKva extends JFrame implements ActionListener {
JTextField vstupA, vstupB, vstupC, vystupx, vystupy;
public RovniceKva() {
JLabel lab1 = new JLabel("A: ", SwingConstants.CENTER);
vstupA = new JTextField();
JLabel lab2 = new JLabel("B: ", SwingConstants.CENTER);
vstupB = new JTextField();
JLabel lab3 = new JLabel("C: ", SwingConstants.CENTER);
vstupC = new JTextField();
JLabel labVysledekx = new JLabel("X: ", SwingConstants.CENTER);
vystupx = new JTextField(5);
vystupx.setEditable(false);
JLabel labVysledeky = new JLabel("Y: ", SwingConstants.CENTER);
vystupy = new JTextField(5);
vystupy.setEditable(false);
JButton b = new JButton("Vypočítej");
b.addActionListener(this);
Container c = getContentPane();
c.setBackground(Color.white);
JPanel p = new JPanel();
p.setLayout(new GridLayout(5,2,5,5));
p.add(lab1);
p.add(vstupA);
p.add(lab2);
p.add(vstupB);
p.add(lab3);
p.add(vstupC);
p.add(labVysledekx);
p.add(vystupx);
p.add(labVysledeky);
p.add(vystupy);
c.add(p, BorderLayout.CENTER);
c.add(b, BorderLayout.SOUTH);
}
@Override
public void actionPerformed(ActionEvent e) {
int A = Integer.parseInt(vstupA.getText());
int B = Integer.parseInt(vstupB.getText());
int C = Integer.parseInt(vstupC.getText());
double vystupx = vypocetVystupx(A, B, C);
double vystupy = vypocetVystupy(A, B, C);
DecimalFormat df = new DecimalFormat("00.000");
vystupx.setText(df.format(vypocetVystupx));
vystupy.setText(df.format(vypocetVystupy));
}
private double vypocetVystupx(int A, int B, int C){
double x = -B + (Math.sqrt((B*B) - 4*A*C));
return x/(2*A);
}
private double vypocetVystupy(int A, int B, int C){
double y = -B - (Math.sqrt((B*B) - 4*A*C));
return y/(2*A);
}
public static void main(String[] args) {
RovniceKva k = new RovniceKva();
k.setDefaultCloseOperation(EXIT_ON_CLOSE);
k.setVisible(true);
k.setBounds(400,400, 350, 250);
k.setResizable(false);
}
}