Zum Inhalt springen

(C#)Hilfe beim Taschenrechner(Windows Forms)


Empfohlene Beiträge

Geschrieben

Moin

Ich habe im Forum schon die SuFu benutzt, aber ich habe nichts gefunden bzw. wusste nicht nach was ich suchen muss.

Meine Probleme:

------------------------------

Ich möchte, dass ich den letzten angegeben Buchstaben aus einer Textbox löschen kann. Also 1234 -> 123

Mein Versuch:

display = textBox1


private void back_Click(object sender, EventArgs e)

        {

            display.Text = display.Text.Length -1;

        }

------------------------------ Ähnliches Problem: Ich möchte ein +/- in der ersten Stelle der Textbox hinzufügen, ohne das erste Zeichen zu löschen. Das hier war am Ende ein verzweiflungsversuch...
private void plusminus_Click(object sender, EventArgs e)

        {

            if (display.Text.Length(1) == "+")

            {

                pm = display.Text;

                display.Text = "-";

                display.Text += pm;

            }

            else

            {

                pm = display.Text;

                display.Text = "+";

                display.Text += pm;

            }

        }

Wäre gut wenn ihr mir helfen könnt. :)

MfG

Fire

Geschrieben

Hallo

ich bin zwar nicht der geborene C# Programmierer aber habs trotzdem versucht :)

1. Problem:


display.Text = display.Text.Substring(0, display.Text.Length - 1);

2. Problem:

display.Text = string.Concat("+",  display.Text);

Gruß Hans-Jörg

Geschrieben

Servus

Danke für deine Antwort.

Problem 1 ist gefixed.

-----

Bei Problem 2 wird zwar ein Plus (bzw. Minus) an erster Stelle hinzugefügt, aber ich wollte es eigentlich so, dass wenn da ein Plus ist das es durch ein Minus ersetzt wird und andersrum. (Wie beim Windows-Taschenrechner)

MfG

Fire

Geschrieben
Bei Problem 2 wird zwar ein Plus (bzw. Minus) an erster Stelle hinzugefügt, aber ich wollte es eigentlich so, dass wenn da ein Plus ist das es durch ein Minus ersetzt wird und andersrum. (Wie beim Windows-Taschenrechner)

Na das sollte jetzt aber doch kein Problem mehr sein.

Kleine Gedankenstütze:

WENN erstes Zeichen = "+" ODER "-"

DANN

-->WENN erstes Zeichen ein "+"

-->DANN concat("-", Substring (1, ...))

-->SONST concat("+", Substring (1, ...))

SONST Concat("+", display.Text)

In code kannst es bestimmt selbst "umwandeln", sollst es ja lernen

Geschrieben

eine andere Möglichkeit, wie man das anstellen könnte, wäre:

man wandelt die Zeichenkette in eine Zahl um (beispielsweise mit Convert.ToInt32(String))

multipliziert diese mit -1

und wandelt die Zahl wieder in eine Zeichenkette um

Vorteil:

man hat nicht dieses Konstrukt der Fallunterscheidung und (Schätzungsweise) weniger Code

Nachteil:

die Eingabe muss sich in eine Zahl umwandeln lassen

-> es dürfen nur Ziffern vorhanden sein

-> es dürfen ggf. keine führenden Nullen vorhanden sein

-> es kann eventuell bei Dezimaltrennzeichen (ist das der richtige Begriff?) zu Problemen kommen

die Eingabe muss mit dem gewählten Datentyp kompatibel sein

- Ganzzahlen

-> keine Kommazahlen

-> eingeschränkter Wertebereich (beispielsweise Int32: -2^31 bis (2^31)-1

- Fließkommazahlen

-> ungenau

je nachdem, was der Taschenrechner später alles können soll, musst du abwägen, was du verwendest

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...