Auf Thema antworten

Hier der aktuelle Code:


[code=Java]import java.awt.*;

import java.awt.event.*;

import javax.swing.JOptionPane;

import javax.swing.*;

import javax.swing.event.*;



public class quadraticquationssolver extends Frame {

  // Anfang Attribute

  private Label label1 = new Label();

  private NumberField nf_a = new NumberField();

  private Label label2 = new Label();

  private NumberField nf_b = new NumberField();

  private Label label3 = new Label();

  private NumberField nf_c = new NumberField();

  private Button btn_calc = new Button();

  private Label label4 = new Label();

  private Label label5 = new Label();

  private Label label6 = new Label();

  private NumberField nf_D = new NumberField();

  private NumberField nf_x1 = new NumberField();

  private NumberField nf_x2 = new NumberField();

  private Button btn_close = new Button();

  private Button btn_clear = new Button();

  private TextArea ta_nachricht = new TextArea("", 1, 1, TextArea.SCROLLBARS_BOTH);

  private Label label7 = new Label();

  private Label lb_title = new Label();

  private Label label8 = new Label();

  private Label lb_function = new Label();

  // Ende Attribute

 

  public quadraticquationssolver(String title) {

    // Frame-Initialisierung

    super(title);

    addWindowListener(new WindowAdapter() {

      public void windowClosing(WindowEvent evt) { dispose(); }

    });

    int frameWidth = 272;

    int frameHeight = 543;

    setSize(frameWidth, frameHeight);

    Dimension d = Toolkit.getDefaultToolkit().getScreenSize();

    int x = (d.width - getSize().width) / 2;

    int y = (d.height - getSize().height) / 2;

    setLocation(x, y);

    setResizable(false);

    Panel cp = new Panel(null);

    add(cp);

    // Anfang Komponenten

   

    label1.setBounds(40, 64, 110, 20);

    label1.setText("Koeffizient  ' a ' :");

    label1.setFont(new Font("Times New Roman", Font.BOLD, 12));

    cp.add(label1);

    nf_a.setBounds(152, 64, 75, 20);

    nf_a.setText("");

    cp.add(nf_a);

    label2.setBounds(40, 96, 110, 20);

    label2.setText("Koeffizient  ' b ' :");

    label2.setFont(new Font("Times New Roman", Font.BOLD, 12));

    cp.add(label2);

    nf_b.setBounds(152, 96, 75, 20);

    nf_b.setText("");

    cp.add(nf_b);

    label3.setBounds(40, 136, 110, 20);

    label3.setText("Koeffizient  ' c ' :");

    label3.setFont(new Font("Times New Roman", Font.BOLD, 12));

    cp.add(label3);

    nf_c.setBounds(152, 136, 75, 20);

    nf_c.setText("");

    cp.add(nf_c);

    btn_calc.setBounds(40, 216, 187, 41);

    btn_calc.setLabel("X-Werte ermitteln");

    btn_calc.addActionListener(new ActionListener() {

      public void actionPerformed(ActionEvent evt) {

        btn_calc_ActionPerformed(evt);

      }

    });

    cp.add(btn_calc);

    label4.setBounds(112, 312, 30, 20);

    label4.setText("x1 :");

    label4.setFont(new Font("Times New Roman", Font.BOLD, 12));

    cp.add(label4);

    label5.setBounds(112, 344, 30, 20);

    label5.setText("x2 :");

    label5.setFont(new Font("Times New Roman", Font.BOLD, 12));

    cp.add(label5);

    label6.setBounds(34, 280, 101, 20);

    label6.setText("Diskriminante D :");

    label6.setFont(new Font("Times New Roman", Font.BOLD, 12));

    cp.add(label6);

    nf_D.setBounds(144, 280, 75, 20);

    nf_D.setText("");

    nf_D.setEditable(false);

    cp.add(nf_D);

    nf_x1.setBounds(144, 312, 75, 20);

    nf_x1.setText("");

    nf_x1.setEditable(false);

    cp.add(nf_x1);

    nf_x2.setBounds(144, 344, 75, 20);

    nf_x2.setText("");

    nf_x2.setEditable(false);

    cp.add(nf_x2);

    btn_close.setBounds(165, 488, 91, 25);

    btn_close.setLabel("Close");

    btn_close.addActionListener(new ActionListener() {

      public void actionPerformed(ActionEvent evt) {

        btn_close_ActionPerformed(evt);

      }

    });

    cp.add(btn_close);

    btn_clear.setBounds(8, 488, 91, 25);

    btn_clear.setLabel("Clear");

    btn_clear.addActionListener(new ActionListener() {

      public void actionPerformed(ActionEvent evt) {

        btn_clear_ActionPerformed(evt);

      }

    });

    cp.add(btn_clear);

    ta_nachricht.setBounds(8, 400, 248, 84);

    ta_nachricht.setEditable(false);

    cp.add(ta_nachricht);

    label7.setBounds(8, 376, 60, 20);

    label7.setText("Nachricht:");

    label7.setFont(new Font("Times New Roman", Font.BOLD, 12));

    cp.add(label7);

    setTitle("Quadratic Equations Solver");

    lb_title.setBounds(32, 16, 211, 27);

    lb_title.setText("Quadratic Equations Solver");

    lb_title.setFont(new Font("Times New Roman", Font.BOLD, 16));

    cp.add(lb_title);

    label8.setBounds(8, 176, 110, 20);

    label8.setText("Ausgangsfunktion:");

    label8.setFont(new Font("Times New Roman", Font.BOLD, 12));

    cp.add(label8);

    lb_function.setBounds(136, 176, 110, 20);

    lb_function.setText("-");

    cp.add(lb_function);

    // Ende Komponenten

   

    setVisible(true);

  } // end of public quadraticquationssolver

 

 

 

 

 

 

  // Anfang Methoden

 

 

 

 

  public void btn_calc_ActionPerformed(ActionEvent evt)

  {

    double a,b,c,x1,x2,D;

   

    a = nf_a.getDouble();

    b = nf_b.getDouble();

    c = nf_c.getDouble();

   

    double temp_a, temp_b, temp_c;

   

    try

    {

      temp_a = nf_a.getDouble();

      temp_b = nf_b.getDouble();

      temp_c = nf_c.getDouble();

    }

    catch( Exception ex )

    {

      ex.printStackTrace();

    }                                      

   

    if ( (nf_a.getDouble() != null) && (nf_b.getDouble() != null) && (nf_c.getDouble() != null)  )

    {

     

     

     

     

      lb_function.setText(a+" x² * "+b+" x * "+c);

     

     

      if (a != 0)

      {

       

        D = b*b - 4*a*c;

        nf_D.setDouble(D);

       

        if (D < 0)

        {

          ta_nachricht.setText("Die Quadratwurzel der Lösungsformel\nim Körper "+

          "der reellen Zahlen ist \nnicht definiert. "+

          "Es existiert also keine\nreelle Lösung!"); 

        }

        else if (D == 0)

        {

          x1 = -b/(2*a);

          nf_x1.setDouble(x1);

          nf_x2.setDouble(x1);

          ta_nachricht.setText("Rechnung Erfolgreich!\nDie Gleichung besitzt eine\nDoppellösung!");

        }

        else

        {

          x1 = (-b+Math.sqrt(D))/(2*a) ;

          x2 = (-b-Math.sqrt(D))/(2*a) ;

          nf_x1.setDouble(x1);

          nf_x2.setDouble(x2);

          ta_nachricht.setText("Rechnung Erfolgreich!\nDie Gleichung besitzt zwei Lösungen!");

        }

       

      }

      else

      {

        nf_a.clear();

        ta_nachricht.setText("Achtung! - Eingabe überprüfen!\nDer Koeffzient von a muss ungleich\nnull sein!");

      }

     

    }

    else

    {

      ta_nachricht.setText("Achtung! - Eingabe überprüfen!\nFelder dürfen nicht leer sein!");

    }

  }

 

 

  public void btn_close_ActionPerformed(ActionEvent evt) {

    System.exit(-1);

  } // end of btn_close_ActionPerformed

 

  public void btn_clear_ActionPerformed(ActionEvent evt) {

    nf_a.clear();

    nf_b.clear();

    nf_c.clear();

    nf_D.clear();

    nf_x1.clear();

    nf_x2.clear();

    ta_nachricht.setText("");

    lb_function.setText("-");

  } // end of btn_clear_ActionPerformed

 

  // Ende Methoden

 

  public static void main(String[] args) {

    new quadraticquationssolver("quadraticquationssolver");

  } // end of main

 

} // end of class quadraticquationssolver

[/code]


Als Fehlermeldungen kommen diese:


[CODE]Compiliere "C:\Dokumente und Einstellungen\Torsten\Desktop\Praktikant\quadraticequationssolver_new\quadraticquationssolver.java" mit Java-Compiler

quadraticquationssolver.java:184:28: error: incomparable types: double and <null>

    if ( (nf_a.getDouble() != null) && (nf_b.getDouble() != null) && (nf_c.getDouble() != null)  )

                           ^

quadraticquationssolver.java:184:58: error: incomparable types: double and <null>

    if ( (nf_a.getDouble() != null) && (nf_b.getDouble() != null) && (nf_c.getDouble() != null)  )

                                                         ^

quadraticquationssolver.java:184:88: error: incomparable types: double and <null>

    if ( (nf_a.getDouble() != null) && (nf_b.getDouble() != null) && (nf_c.getDouble() != null)  )

                                                                                       ^

3 errors

[/CODE]



Oben