AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Hilfe

Ein Thema von 2Kuhl4You · begonnen am 21. Mär 2019 · letzter Beitrag vom 21. Mär 2019
Antwort Antwort
Seite 1 von 2  1 2   
2Kuhl4You

Registriert seit: 23. Apr 2018
9 Beiträge
 
#1

Hilfe

  Alt 21. Mär 2019, 15:42
Hallo, ich brauche dringend hilfe. Ich soll einen Taschenrechner bauen bei dem ich unendlich zahlen eingeben kann.
Er soll addieren, Subtrahieren, Multiplizieren, Dividieren und Kommas haben können.
Hat wer ne Idee? Einen Vorschlag? Hat das schon mal wer gemacht?

Bin für alles offen

Lg 2Kuhl4You
  Mit Zitat antworten Zitat
lxo

Registriert seit: 30. Nov 2017
257 Beiträge
 
Delphi 12 Athens
 
#2

AW: Hilfe

  Alt 21. Mär 2019, 15:48
Hast du denn schon irgendwas gemacht?

Als Beispiel kannst du ja den Windows-Taschenrechner nehmen.
Windows Taschenrechner
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.269 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: Hilfe

  Alt 21. Mär 2019, 15:49
Hallo,
was Du brauchst, ist ein Formelparser.

Editor und TButton aufs Form
Formelparser.Formel:= Edit1.Text;
Formelparser.Berechne.

Den Formelparser baust Du selber, indem Du den String im Editfeld
in seine einzelnen Bestandteile zerlegst, hier meistens in eine Baumstruktur.

Bsp: 1+2-3
ergibt: Minus(Plus(1,2),3)

Minus und Plus sind deine eigenen Funktionen.

Die Hohe Kunst sind dann die Rechenregeln (* vor +) usw.

Du merkst, das ist überhaupt nicht einfach.

Bsp2: 1+2-3
ermittle Zahl1 und Zahl2, also 1 und 2
ermittle Rechenart, also +, addire, merke Ergebnis = 3
ermittle Zahl3 und Rechenregel, also 3 minus 3
Mit dem Ansatz bekommst Du aber die Rechenregeln nicht hin.


PS: Ändere mal Deinen Titel in was sinnvolles.
Heiko
  Mit Zitat antworten Zitat
MichaelT

Registriert seit: 14. Sep 2005
Ort: 4020 Linz
532 Beiträge
 
Delphi 10.3 Rio
 
#4

AW: Hilfe

  Alt 21. Mär 2019, 15:52
Du verwaltest eine Liste mit in Delphi Zahlen vom Typ Double oder können die Gleitkommazahlen beliebig lang sein als BigInter.

Beim Big Integer (beliebig lange Ganzzahlen) wird die Zeichenkette direkt verarbeitet und die Zahl nicht intern gewandelt.

Themen:
  • Liste mit Zahlen
  • möglw. Behandlung der Eingabe am numerischen Ziffernblock oder allgemeiner die Behandlung der Enter Taste (VK_ENTER bspw. und die Verarbeitung in den passenden Ereignisbehandlungsroutinen
  • Konvertierung und Ausgabe (passende Format - Funktion bspw.) von der Zeichenkette in eine Zahl vom Type Double und zurück
  • ...


Hallo, ich brauche dringend hilfe. Ich soll einen Taschenrechner bauen bei dem ich unendlich zahlen eingeben kann.
Er soll addieren, Subtrahieren, Multiplizieren, Dividieren und Kommas haben können.
Hat wer ne Idee? Einen Vorschlag? Hat das schon mal wer gemacht?

Bin für alles offen

Lg 2Kuhl4You
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.269 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: Hilfe

  Alt 21. Mär 2019, 15:58
Hallo,
Zitat:
bei dem ich unendlich zahlen eingeben kann
Wie genau soll das erfolgen?
Nacheinander oder alle auf einmal.
Der oben erwähnte Formelparser erwartet erst mal die komplette Formel und ist entsprechend kompliziert.

Wenn du immer Zahl1/Rechen-Operation/Zahl2 eingibst, wird es einfacher.
Heiko
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.173 Beiträge
 
#6

AW: Hilfe

  Alt 21. Mär 2019, 16:31
Zitat:
Hallo, ich brauche dringend hilfe. Ich soll einen Taschenrechner bauen bei dem ich unendlich zahlen eingeben kann.
Ein richtig "kuhler move" wäre ja eigentlich, die Aufgabe als unlösbar abzugeben. Denn das ist sie auch im wahrsten Sinne. Unlösbar.
Unendlich Zahlen eingeben ist soweit ich weiß nicht möglich. Klar kann man das nicht machen was ich oben schrieb. Aber wenn man es machen würde, dürfte der Lehrer dir das nicht einmal schlecht bewerten, da er seine Aufgabenstellung einfach falsch formuliert hat.

Geändert von DieDolly (21. Mär 2019 um 16:57 Uhr)
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.400 Beiträge
 
Delphi 7 Professional
 
#7

AW: Hilfe

  Alt 21. Mär 2019, 16:34
Bei 'nem Taschenrechner gibt man für gewöhnlich keine Formeln ein und braucht daher auch keinen Formelparser.

Man nehme ein Edit.
Gebe dort 'ne Zahl ein.
Betätige einen Button für Plus oder Minus oder was auch immer.
Merke sich die gewünschte Rechenoperation.
Gebe im Edit eine andere Zahl ein.
Betätige den Button für Gleich.
Führe mit den beiden Zahlen die gewünschte Rechenoperation aus.
Schreibe das so erhaltene Ergebnis ins Edit.
Betätige einen Button für Plus oder Minus oder was auch immer.
Merke sich die gewünschte Rechenoperation.
Gebe im Edit eine andere Zahl ein.
Betätige den Button für Gleich.
Führe mit den beiden Zahlen die gewünschte Rechenoperation aus.
Schreibe das so erhaltene Ergebnis ins Edit.
...

Wenn man nachvollziehen können möchte, was da so eingeben bzw. geklickt wurde, schreibe man das eben bei jedem Buttonklick in ein Memo.

Ansonsten mal bei Bei Google suchendelphi source taschenrechner bedient?

Oder nur hier im Forum gesucht mit delphi source taschenrechner site:delphipraxis.net?
  Mit Zitat antworten Zitat
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.753 Beiträge
 
Delphi 11 Alexandria
 
#8

AW: Hilfe

  Alt 21. Mär 2019, 16:46
Hausaufgaben sind echt schlimm. Aber ich würde DieDollys Weg wählen. Eventuell noch die Begründung um fehlende Testbarkeit erweitern.

Sherlock
Oliver
Geändert von Sherlock (Morgen um 16:78 Uhr) Grund: Weil ich es kann
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#9

AW: Hilfe

  Alt 21. Mär 2019, 16:51
@Sherlock,DieDolly: Ich würde jetzt nicht unbedingt davon ausgehen, dass der Lehrer die Aufgabenstellung so formuliert hat.
Die Chancen stehen ziemlich gut, dass 2Kuhl4You die Aufgabenstellung nur (schlecht) in seinen eigenen Worten wiedergegeben hat.
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.753 Beiträge
 
Delphi 11 Alexandria
 
#10

AW: Hilfe

  Alt 21. Mär 2019, 16:57
Umso schlimmer, denn dann rackern sich hier die freiwilligen Helfer einen ab und bauen den unendlichen Taschenrechner, nur um am Ende zu hören, daß es eigentlich um eine Applikation zum Mischen von Farben ging.

An 2Kuhl4You: Bitte schreibe entweder die Aufgabenstellung ab, oder bestätige das sie so lautet, wie Eingangs beschrieben.

Sherlock
Oliver
Geändert von Sherlock (Morgen um 16:78 Uhr) Grund: Weil ich es kann
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 15:33 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz