Announcement

Collapse
No announcement yet.

mehrere Eingaben aus einer Textbox auslesen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • #16
    Es braucht keine "if return" Anweisung.

    Einfach im Button 1 die Variable a belegen und die Textbox leeren
    Im Button 2 Variable b belegen, die Rechnung durchführen und das Ergebnis reinschreiben

    Button 1
    a = Convert.ToInt32(textBox1.Text);
    textBox1.Text = "";


    Button 2
    b = Convert.ToInt32(textBox1.Text);
    textBox1.Text = Convert.ToString(a+b);
    Zuletzt editiert von Christian Marquardt; 01.11.2014, 16:36.
    Christian

    Comment


    • #17
      }
      int a, b, c, d, e;

      private void button1_Click(object sender, EventArgs e)//Rechne Plus
      {
      a = Convert.ToInt32(textBox1.Text);
      textBox1.Text = "";

      }

      private void button2_Click(object sender, EventArgs e)//Rechne Minus
      {
      b = Convert.ToInt32(textBox1.Text);
      textBox1.Text = "";
      }

      private void button3_Click(object sender, EventArgs e)//Rechne mal
      {
      c = Convert.ToInt32(textBox1.Text);
      textBox1.Text = "";
      }

      private void button4_Click(object sender, EventArgs e)//Dividieren
      {
      d = Convert.ToInt32(textBox1.Text);
      textBox1.Text = "";
      }

      private void button5_Click(object sender, EventArgs e)//x hoch y
      {

      }

      private void button6_Click(object sender, EventArgs e)//Ergebnis
      {
      e = Convert.ToInt32(textBox1.Text);
      textBox1.Text = Convert.ToString(a + e);
      textBox1.Text = Convert.ToString(b - e);
      textBox1.Text = Convert.ToString(c * e);
      textBox1.Text = Convert.ToString(d / e);


      ergibt unzählige Fehlermeldungen. Wenn es nur so einfach wäre, Christian.

      Comment


      • #18
        Es ist einfach!

        Erstens kommst du hier wieder mit neuen Anforderungen, die wir hier nicht kennen

        Zweitens lies da nach was in #5 steht

        2. Button drücken ->Eingabe in Variable merken, Button in Variable merken
        Auswerten
        Wenn Button +
        Ergebnis= erste Eingabe+zweite Eingabe
        Wenn Button -
        Ergebnis= erste Eingabe-zweite Eingabe
        String operation="";


        Button Plus
        a = Convert.ToInt32(textBox1.Text);
        textBox1.Text = "";
        operation="+";

        Button Minus
        a = Convert.ToInt32(textBox1.Text);
        textBox1.Text = "";
        operation="-";


        Button =
        b = Convert.ToInt32(textBox1.Text);
        int ergebnis=0;
        if(operation.Equals("+")){
        ergebnis=a+b;
        }

        ......

        textBox1.Text = Convert.ToString(ergebnis);
        Zuletzt editiert von Christian Marquardt; 01.11.2014, 19:26.
        Christian

        Comment


        • #19
          Hey. Irgendwie werden hier, glaub ich, meine Beiträge editiert oder auch nicht alle gespeichert die ich schreibe. Seltsam.

          Ich habe die String Operation angewandt. Bei nur einem (+) Button und einem Ergebnis Button funktioniert das auch. Wenn ich jedoch eine weitere (globale) String Operation durchführe (zb "-"), dann kommt eine Fehlermeldung wegen einer Mehrdeutigkeit der String Operatoren. Wollte ich nur mal gesagt haben. Nicht, dass du das falsche denkst. Ich werde mich nochmal versuchen einen funktionierenden Code für das Problem zu schreiben.
          Zuletzt editiert von Humpty; 07.11.2014, 20:55.

          Comment


          • #20
            Wenn ein Beitrag geändert wird, wird das unten angezeigt
            Christian

            Comment


            • #21
              Originally posted by Christian Marquardt View Post


              Button =
              b = Convert.ToInt32(textBox1.Text);
              int ergebnis=0;
              if(operation.Equals("+")){
              ergebnis=a+b;
              }

              ......

              textBox1.Text = Convert.ToString(ergebnis);
              Hier zu nochmal. Das ist aber echt tricky finde ich. Ich habe versucht für die "-" string operation den Code in die if-Anweisung zu integrieren.

              private void button2_Click(object sender, EventArgs e) //Ergebnis Button
              {
              b = Convert.ToInt32(textBox1.Text);
              int ergebnis = 0;
              if (operation.Equals("+"))
              {
              ergebnis = a + b;
              }
              textBox1.Text = Convert.ToString(ergebnis);

              if (operation.Equals("-"))
              {
              ergebnis =c-b;
              }
              textBox1.Text = Convert.ToString(ergebnis);
              }

              private void button3_Click(object sender, EventArgs e)
              {
              c = Convert.ToInt32(textBox1.Text); //Rechne Minus
              textBox1.Text = "";
              operation2 = "-";
              }

              }

              Warum geht das jetzt nicht? Liegt es daran das C# Die Buttons nach Reihenfolge abarbeitet und der Minus-Button am Ende steht? Gestern habe ich es schon mit if else probiert, womit es aber zu vielen vielen Fehlermeldungen kam. :/

              Comment


              • #22
                Mir ist dein Programm unklar

                Warum gibt es eine Variable c? Du hast ZWEI Variablen a und b. Die werden EINMAL im ="-Button berechnet. a ergibt sich aus der ersten Eingabe; b aus der zweiten. Immer, egal was für eine Rechenoperation

                Warum die Anweisung
                textBox1.Text = Convert.ToString(ergebnis);
                merhmals? Das Ergebnis wird (egal wie es zustande kommt) am Ende des "="-Button einmal konvertiert und in die Box geschrieben

                Des Weiteren ist der Code für jemanden der nicht daran sitzt nicht zu verstehen. Nutze sprechende Namen, so dass man sich vorstellen kann, was welche Methode macht.

                Weiterhin ist
                Warum geht das jetzt nicht?
                kein Fehler. Nenne die Fehlermeldung und die Zeile mit dem Fehler
                Christian

                Comment


                • #23
                  Das ist aber echt tricky finde ich
                  Sorry, aber ehrlich gesagt ist das ganze so unglaublich simpel das ich Schwierigkeiten habe dein Problem überhaupt nachzuvollziehen und das ganze nicht schon fast für trolling halten sollte.

                  Wenn ich deinen Code sehe fallen mir 2 Dinge auf.
                  a) Du benutzt immer noch kein anständiges Naming der Dinge. Wahrscheinlich macht es nicht nur uns schwer deinen Code zu verstehen sondern du tölpelst dich auch noch selbst dabei.
                  b) Du scheinst einen simplen Vorgang unnötig zu verkomplizieren (oder hast zuviel von der eigentlichen Aufgabe für dich behalten so das wir das nur missverstehen können).

                  Es soll eine mathematische Operation ausgeführt werden. Die hat den Aufbau {Wert1} {Operation} {Wert2}.
                  Das maximale (wenn überhaupt) was man sich da zwischenzeitlich mal merken müßte sind diese 3 Dinge. Wo bekommst du neben einen a und b was ich mal als die beiden Werte identifiziere noch ein c her? Wofür brauchst du noch eine Operation2?

                  Wenn Button3 der Knopf für die Minus Operation ist (dann nenn denn auch so!!!) wieso schreibst du das minus in operation2 wenn du dann in button2 (vermutlich der Knopf zum ausrechnen) dann auf das minus in operation prüfst.

                  Ich kann die nur wärmstens ans Herz legen dir Debugging Fähigkeiten anzueignen. Diese wirklich trivialen Probleme würden sich dir sofort selbst erschließen wenn du einfach mal in deiner Entwicklungsumgebung durch den Code steppen würdest und deine Erwartungen gegenüber dem Code mit der wirklich abgleichst.

                  Comment


                  • #24
                    Hier der Pseudocode
                    Code:
                    int a,b;
                    String operation;
                    
                    
                    Button Addition
                        {
                        a = Convert.ToInt32(textBox1.Text);
                        textBox1.Text = "";
                        operation="+";
                        }
                    
                    Button Substraktion
                        {
                        a = Convert.ToInt32(textBox1.Text);
                        textBox1.Text = "";
                        operation="-";
                        }
                    
                    Button Multiplikation
                        {
                        a = Convert.ToInt32(textBox1.Text);
                        textBox1.Text = "";
                        operation="*";
                        }
                    
                    Button Division
                        {
                        a = Convert.ToInt32(textBox1.Text);
                        textBox1.Text = "";
                        operation="/";
                        }
                    
                    Button Gleich
                        {
                        int ergebnis=0;
                        b = Convert.ToInt32(textBox1.Text);
                        if (operation.Equals("+"))
                            {
                            ergebnis=a+b;
                            }
                        else if (operation.Equals("-"))
                            {
                            ergebnis=a-b;
                            }
                        else if (operation.Equals("*"))
                            {    
                            ergebnis=a*b;
                            }
                        else if (operation.Equals("/"))
                            {
                            ergebnis=a/b;
                            }
                        textBox1.Text = Convert.ToString(ergebnis);
                    }
                    Christian

                    Comment

                    Working...
                    X