19.5 Der komplette Rechner
 
Übung Bauen Sie eine einen Rechner auf, der möglichst viele der Methoden aus der Klasse Mathematik verwendet.

 

 


 

Download:
RechnerGUI.java
Wir bezeichnen jetzt unseren Quellcode RechnerGUI. Die Initialen GUI stehen für Grafical User Interface. Es steht also als Schnittstelle ziwshcen der Fachklasse und dem Bediener des Programms. Wir handeln streng nach dem Paradigma: "Trenne stets Fachklasse vom User Inteface. hier also der GUI.

Wir wollen nicht mehr den ganzen Quelltext kommentieren, sondern nur noch die Methode actionPerformed(...) darstellen.

 

 
public void actionPerformed(ActionEvent e){

  String ausgabeText="";

  Object obj = e.getSource();

  if(obj == ggTButton){
    int a = Integer.parseInt(eingabeFeldA.getText());
    int b = Integer.parseInt(eingabeFeldB.getText());
    if (a>0 && b>0){
      ausgabeText = ""+Mathematik.ggT(a,b);
    }
    else  {
      ausgabeText = "a und b müssen positive ganze 
                     Zahlen sein";
    }

  }
  if(obj == kgVButton){
    int a = Integer.parseInt(eingabeFeldA.getText());
    int b = Integer.parseInt(eingabeFeldB.getText());
    if (a>0 && b>0){
      ausgabeText = ""+Mathematik.kgV(a,b);
    }
    else  {
      ausgabeText = "a und b müssen positive ganze 
                     Zahlen sein";
    }
  }
    
  if (obj == qglButton){
    double a = Double.parseDouble(eingabeFeldA.getText());
    double b = Double.parseDouble(eingabeFeldB.getText());
    double c = Double.parseDouble(eingabeFeldC.getText());
    ausgabeText = Mathematik.loeseQuadGl(a,b,c);
  }
    
  if (obj == glButton){
    double a = Double.parseDouble(eingabeFeldA.getText());
    double b = Double.parseDouble(eingabeFeldB.getText());
    ausgabeText = Mathematik.loeseGl(a,b);
  }
    
  if (obj == fakButton){
    int a = Integer.parseInt(eingabeFeldA.getText());
    if (a<=20){
      ausgabeText = ""+ Mathematik.fakultaet(a);
    }
    else ausgabeText = "der Wert von a darf höchstens 20 sein";
  }
   
  if (obj == fibButton){
    int a = Integer.parseInt(eingabeFeldA.getText());
    if (a>0){
      ausgabeText = ""+ Mathematik.fakultaet(a);
    }
    else ausgabeText = "der Wert von a muss eine 
                        pos. ganze Zahl sein";
  }
  ausgabeFeld.setText(ausgabeText);
}
Kommentare Wie man unschwer erkennen kann, wir in den Implementierungen der Reaktionen auf das Drücken der einzelnen Buttons der Versuch unternommen, Fehler bei der Eingabe etwas abzufangen. Ohne größeren Aufwand gelingt das nicht ganz. Wir werden dazu später Verfahren kennen lernen, die es uns erlauben professioneller Fehler abzufangen.
 
zu Das Applet zum Rechner
zur Startseite www.pohlig.de  (C) MPohlig 2003