Zum Inhalt springen

4 Tasten Taschen rechner!


zlaja03

Empfohlene Beiträge

Hi an alle,

ich habe ein kleines Problem mit der programmierung eines 4 tasten taschenrechner!

- eine taste soll die zahl inkrementieren

- eine taste soll die zahl dekrementieren

- eine taste soll reseten

- und eine soll rechenoperation ausführen

ich glaub mit den ersten drei schritten sollte es kein problem geben leider weiss ich nicht genau wie ich die rechenoperationen ausführen soll!

hab versucht eine code einzugeben und ich weiss nicht woran es liegt das es nicht klappt!

hoffe jemand kann mir was dazu sagen :D

gruß

// Einbinden der Javelin-Klassen.

import stamp.core.*;


// Einbinden der Klasse "LCD-Terminal".

// ACHTUNG: GGF. LIBRARY-PFAD DER "JAVELIN STAMP IDE" ANPASSEN.

import LCDTerminal;



public class taschenrechner{

  // Objekt "LCD-Display" definieren.

  // Initialisiert zugleich das Display.

  static LCDTerminal LCDDisplay = new LCDTerminal();



  // Statusvariable der Taste an Pin4 Pin5 Pin6 definieren.

  static boolean statusP7, statusP6, statusP5, statusP4 = false;



  // Tasten definieren ("false" gibt den logischen

  // Zustand bei nichtgedrueckter Taste wieder).

  static Button TasteP4 = new Buttin(CPU.pin4, false);

  static Button TasteP7 = new Button(CPU.pin7, false);

  static Button TasteP5 = new Button(CPU.pin5, false);

  static Button TasteP6 = new Button(CPU.pin6, false);


  // Hauptroutine.

  public static void main(){


  int count = 0  ;

    // Endlosschleife

    while (true) {


      // Warten auf Tastendruck

      while (!ButtonTest()) { }


      // Display loeschen (und bewegen des Cursors in erste Zeile Position 0).

      LCDDisplay.clearScr();



      //Abfrage ob Taste 5 gedrueckt wurde

      if (statusP5) {


        //decrease

        count = count - 1;

        //Statusvariable zurücksetzen

        statusP5 = false;

      }



      //Abfrage ob Taste 4 gedrueckt wurde

      if (statusP4) {


        //increase

        count = count + 1;

        //Statusvariable zurücksetzen

        statusP4= false;

      }



      //Abfrage ob Taste 6 gedrueckt wurde

      if (statusP6) {


        //reset

        count = 0;

        //Statusvariable zurücksetzen

        statusP6= false;

      }


      /**

 *  Eingabe der Rechenmethode

 */


/**

 *  Überprüfung ob Division durch 0 gewünscht.

 */


                if(StringOper.equals(":")&&zahlDblB.equals(0.0))

                        System.out.println("Division durch \"0\" nicht möglich.");

                        else {

//Abfrage ob Taste 7 gedrueckt wurde

      if (statusP7) {

                         System.out.println("Addieren(+) / Subtrahieren(-) / Multiplizieren(*) / Dividieren( / ?");

                String StringOper = eingabe("[-:\\*\\+]*");


                System.out.println("Das Ergebnis ist:");




                        if(StringOper.equals("+"))

                                System.out.println(zahlDblA + zahlDblB);


                        else if(StringOper.equals("-"))

                                System.out.println(zahlDblA - zahlDblB);


                        else if(StringOper.equals("*"))

                                System.out.println(zahlDblA * zahlDblB);


                        else if(StringOper.equals(":"))

                                System.out.println(zahlDblA / zahlDblB);



                        else    statusP7= false;


                        }

                }




    // Ausgabe an aktueller Position des Cursors.

        LCDDisplay.write(Integer.toString(count));

    }


  }


  /**

  * Testet ob Taste gedrueckt wurde.

  *

  * @return logischer Wert, ob Taste gedrueckt wurde

  */

  static boolean ButtonTest(){

    if (TasteP4.buttonDown()) { statusP4 = true; return true; }

    if (TasteP7.buttonDown()) { statusP7 = true; return true; }

    if (TasteP5.buttonDown()) { statusP5 = true; return true; }

    if (TasteP6.buttonDown()) { statusP6 = true; return true; }

    return false;

  }

}[/code]

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...