AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Code-Bibliothek Neuen Beitrag zur Code-Library hinzufügen Delphi Taschenrechner (Anfänger) Problem mit Minuszahlen
Thema durchsuchen
Ansicht
Themen-Optionen

Taschenrechner (Anfänger) Problem mit Minuszahlen

Ein Thema von Prakti16 · begonnen am 30. Sep 2016 · letzter Beitrag vom 30. Sep 2016
Antwort Antwort
Jim Carrey
(Gast)

n/a Beiträge
 
#1

AW: Taschenrechner (Anfänger) Problem mit Minuszahlen

  Alt 30. Sep 2016, 10:53
http://www.delphipraxis.net/190355-e...ml#post1348903
  Mit Zitat antworten Zitat
Prakti16

Registriert seit: 26. Sep 2016
23 Beiträge
 
#2

AW: Taschenrechner (Anfänger) Problem mit Minuszahlen

  Alt 30. Sep 2016, 10:55
Das habe ich ja aber soweit ich meine Programmierung verstehe wird die zahl im Edit1.Text gespeichert und dann erst in die var Zwischensumme deswegen kann ich keine Minuszahlen Richtig rechnen aber ich kriege es nicht mehr behoben
  Mit Zitat antworten Zitat
Aviator

Registriert seit: 3. Jun 2010
1.611 Beiträge
 
Delphi 10.3 Rio
 
#3

AW: Taschenrechner (Anfänger) Problem mit Minuszahlen

  Alt 30. Sep 2016, 10:56
Bitte überarbeite deinen Beitrag nochmal und rahme den gesamten SourceCode in
Code:
[DELPHI][/DELPHI]
Tags ein damit man das ansatzweise lesen kann. Achte auch bitte auf Einrückungen in deinem SourceCode. Die sind jetzt natürlich verloren gegangen.

EDIT: Du kannst auch den SourceCode komplett markieren und dann den Delphi Helm über dem (erweiterten) Beitragseditor klicken.
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.165 Beiträge
 
Delphi 10.3 Rio
 
#4

AW: Taschenrechner (Anfänger) Problem mit Minuszahlen

  Alt 30. Sep 2016, 11:16
Leider rechnet Dein Taschenrechner aber falsch...

1+2*3 = 7 und nicht 9

Am einfachsten kann man das umsetzen, in dem man einen Stack benutzt! - intern - die Umgekehrte polnische Notation verwenden. // Edit

Geändert von Mavarik (30. Sep 2016 um 11:39 Uhr)
  Mit Zitat antworten Zitat
Prakti16

Registriert seit: 26. Sep 2016
23 Beiträge
 
#5

AW: Taschenrechner (Anfänger) Problem mit Minuszahlen

  Alt 30. Sep 2016, 11:22
Ok danke schön
  Mit Zitat antworten Zitat
Jim Carrey
(Gast)

n/a Beiträge
 
#6

AW: Taschenrechner (Anfänger) Problem mit Minuszahlen

  Alt 30. Sep 2016, 11:34
Am einfachsten kann man das umsetzen, in dem man einen Stack benutzt - intern - die Umgekehrte polnische Notation verwendet.
Ok danke schön
Weißt du denn, was er meint? Ich nämlich nicht
  Mit Zitat antworten Zitat
Prakti16

Registriert seit: 26. Sep 2016
23 Beiträge
 
#7

AW: Taschenrechner (Anfänger) Problem mit Minuszahlen

  Alt 30. Sep 2016, 11:49
Nicht so wirklich aber ich gucke im delphi treff nach der bedeutung von stack - intern - die Umgekehrte polnische Notation verwendet.
  Mit Zitat antworten Zitat
Prakti16

Registriert seit: 26. Sep 2016
23 Beiträge
 
#8

AW: Taschenrechner (Anfänger) Problem mit Minuszahlen

  Alt 30. Sep 2016, 11:51
ich kann es dir ja gleich schreiben
  Mit Zitat antworten Zitat
Prakti16

Registriert seit: 26. Sep 2016
23 Beiträge
 
#9

AW: Taschenrechner (Anfänger) Problem mit Minuszahlen

  Alt 30. Sep 2016, 11:57
Hier ist es .
Damit zusammengesetzte Ausdrücke auch ohne Klammern geschrieben werden können, hat der polnische Mathematiker Jan Lukasiewicz eine Notation entworfen, welche die Operatoren neben den Zahlen und Variablen (und nicht dazwischen) aufführt.
Die hier verwendete Notation schreibt die Operatoren nach den Zahlen und wird "umgekehrte Polnische Notation" genannt.
Anstelle von "3 + 4" schreibt man hier "3 4 +". Damit können auch zusammengesetzte Ausdrücke ohne Klammern geschrieben werden. Anstelle von "(3 + 4) * (6 - 2)" schreibt man nun "3 4 + 6 2 - *". Es wird also zuerst 3 + 4 gerechnet, danach wird 6 - 2 bestimmt und am Schluss werden die beiden Faktoren miteinander multipliziert.
Achtung: Eine Änderung in der Reihenfolge der Operatoren hat natürlich auch eine Auswirkung auf die Auswertungsreihenfolge und somit auf das Resultat. Somit wird "3 4 + 6 - 2 *" wie folgt ausgewertet: "((3 + 4) - 6) * 2" .
Am einfachsten stellt man sich vor, die Zahlen werden der Reihe nach (von links nach rechts) auf Zettel geschrieben und aufeinadergetürmt (Stapel). Kommt nun ein Operator, so werden die beiden obersten Zettel vom Stapel genommen, miteinander verrechtet und am Schluss das Resultat wieder auf dem Stapel (auf einem neuen Zettel) aufgetürmt. (Die beiden verrechneten Zahlen werden nicht mehr auf den Stapel gelegt.)

Beispiel :


markieren
ausblenden Quelltext
1:
2:
3:
1
* 5 7
* * 68 9 2
Davor kommen wiederum die Operatoren für die Additionen. Das ganze sieht dann also so aus:
markieren
ausblenden Quelltext
1:
+ + 1 * 5 7 * * 68 9 2
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.165 Beiträge
 
Delphi 10.3 Rio
 
#10

AW: Taschenrechner (Anfänger) Problem mit Minuszahlen

  Alt 30. Sep 2016, 11:54
Nicht so wirklich aber ich gucke im delphi treff nach der bedeutung von stack - intern - die Umgekehrte polnische Notation verwendet.
LOL...

Stack ist klar oder nicht?

UPN ist...

1 2 + 3 * =

Hierfür nimmt man einen Stack für die Zahlen und einen für die Operatoren... Jeder Operator hat eine Wertigkeit

Beispiel: (=3;*=2 +=1

So kann man die Reihenfolge was zu erst berechnet werden muss erhalten.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:26 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz