Guten Tag,
ich soll für die Schule ein Programm schreiben, dass mir etwas ausrechnet. Ich habe dabei an ein Programm gedacht, das einem Werte einer Funktion ausgibt. Ich habe es mir so gedacht, dass man eine Funktion in ein Label eingeben kann, das Programm erkennt das und gibt dann die Werte für x= (-5) bis 5 aus. Nur habe ich absolut keine Ahnung wie ich es schaffe, dass das Programm den Input im Label als Formel versteht und mit dieser Rechnet.
Ich hoffe ihr könnt mir helfen.
MfG
Mit Input Formel Rechen
- af0815
- Lazarusforum e. V.
- Beiträge: 6791
- Registriert: So 7. Jan 2007, 10:20
- OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
- CPU-Target: 32Bit (64Bit)
- Wohnort: Burgenland
- Kontaktdaten:
Re: Mit Input Formel Rechen
Einmal Hut ab, das du klar sagst das eine Hausaufgabe ist.
Bei Google würde ich einmal "lazarus funktionsplotter" oder "lazarus funktion berechnen" eingeben.
Die Frage ist, wie einfach soll es sein ?!
So nebenbei, wenn der Lehrer Lazarus/fpc zulässt, so ist es logisch das er hier mitliest. Das nur so als Info.
Bei Google würde ich einmal "lazarus funktionsplotter" oder "lazarus funktion berechnen" eingeben.
Die Frage ist, wie einfach soll es sein ?!
So nebenbei, wenn der Lehrer Lazarus/fpc zulässt, so ist es logisch das er hier mitliest. Das nur so als Info.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).
Re: Mit Input Formel Rechen
Danke für die Antwort, also eine Hausaufgabe ist es nicht wirklich, da wir es hauptsächlich im Unterricht machen und ich mir freiwillig etwas außerhalb des Unterrichtes beibringen will
.
Es sollte nicht allzu kompliziert sein, da wir noch relativ am Anfang sind.
Außerdem ist es sehr unwahrscheinlich, dass er das hier ließt. xD

Es sollte nicht allzu kompliziert sein, da wir noch relativ am Anfang sind.
Außerdem ist es sehr unwahrscheinlich, dass er das hier ließt. xD
-
- Beiträge: 118
- Registriert: Do 20. Jul 2017, 23:47
- OS, Lazarus, FPC: Win7 und Win10
- CPU-Target: xxBit
- Wohnort: Südheide (Schnuckenland)
Re: Mit Input Formel Rechen
Also vorweg, ich denke mal zur Eingabe benötigst du ein TEdit und kein TLabel. Ich nutze die TLabel immer nur zur Anzeige von irgendwelchen Sachen.
Grundsätzlich würde ich mal behaupten, daß ein sogenannter Parser, der dir deine Eingabe-Zeichenkette zu einer Funktion zerlegt, ein paar Nummer zu schwierig für dich sein wird. Auch eine fertige Parser-Komponente einzusetzen ist nicht so ganz einfach.
Wenn du dir selber ein Programm überlegen darfst, was irgendwas ausrechnet, dann würde ich z.B. ein Programm zur Quadervolumenberechnung in Angriff nehmen. Die Formel sollte klar sein.
a.) Dann hast du 3 Eingabefelder (TEdit) in die zu die drei Kantenlängen eingeben mußt.
b.) Ein Button, mit dem die Berechnung ausgeführt wird.
c.) Ein Label, in dem du das Rechen-Ergebnis anschließend anzeigst.
Du kannst das Programm dann noch verbessern, daß die Berechnung immer schon dann ausgeführt wird, wenn du ein Eingabefeld verläßt, also z.B. in ein anderes Eingabefeld wechselst.
Oder du bohrst es weiter auf und machst mithilfe von Radio-Buttons zwei oder mehr verschiedene Formeln, die bis zu 3 Parameter haben, die du in obige 3 Edits eingibst......
Sowas in der Art ist einfacher.
Grundsätzlich würde ich mal behaupten, daß ein sogenannter Parser, der dir deine Eingabe-Zeichenkette zu einer Funktion zerlegt, ein paar Nummer zu schwierig für dich sein wird. Auch eine fertige Parser-Komponente einzusetzen ist nicht so ganz einfach.
Wenn du dir selber ein Programm überlegen darfst, was irgendwas ausrechnet, dann würde ich z.B. ein Programm zur Quadervolumenberechnung in Angriff nehmen. Die Formel sollte klar sein.
a.) Dann hast du 3 Eingabefelder (TEdit) in die zu die drei Kantenlängen eingeben mußt.
b.) Ein Button, mit dem die Berechnung ausgeführt wird.
c.) Ein Label, in dem du das Rechen-Ergebnis anschließend anzeigst.
Du kannst das Programm dann noch verbessern, daß die Berechnung immer schon dann ausgeführt wird, wenn du ein Eingabefeld verläßt, also z.B. in ein anderes Eingabefeld wechselst.
Oder du bohrst es weiter auf und machst mithilfe von Radio-Buttons zwei oder mehr verschiedene Formeln, die bis zu 3 Parameter haben, die du in obige 3 Edits eingibst......
Sowas in der Art ist einfacher.
Re: Mit Input Formel Rechen
Das "Problem" ist, dass wir solch Programme schon im Überfluss gemacht haben und ich deswegen was neues bzw. anderes machen will. Aber wenn ein Parser etwas zu schwer ist, muss ich wohl auf was anderes ausweichen.
-
- Beiträge: 118
- Registriert: Do 20. Jul 2017, 23:47
- OS, Lazarus, FPC: Win7 und Win10
- CPU-Target: xxBit
- Wohnort: Südheide (Schnuckenland)
Re: Mit Input Formel Rechen
Wenn du schon Erfahrung hast und neugierig bist, dann schau mal nach "TFPExpressionParser"
https://wiki.freepascal.org/How_To_Use_ ... sionParser
Auf die Schnelle fand ich noch einen älteren Thread hier aus dem Forum:
"Formel Parser"
viewtopic.php?t=9302
Hab' es aber nur überflogen. Aber ich denke, du wirst durchs Suchen ein Beispielprojekt finden. Anschauen und dann häppchenweise übertragen in sein eigenes Projekt.
Entmutigen wollte ich dich nicht! Ohne Neugier und Fleiß kommt man nicht weiter.....
Und man muß sich manchmal auch durchbeißen. Ich hatte vorhin auch stundenlang einen Fehler gesucht und wäre fast verzweifelt (war 'ne Sache mit ModalResult).
https://wiki.freepascal.org/How_To_Use_ ... sionParser
Auf die Schnelle fand ich noch einen älteren Thread hier aus dem Forum:
"Formel Parser"
viewtopic.php?t=9302
Hab' es aber nur überflogen. Aber ich denke, du wirst durchs Suchen ein Beispielprojekt finden. Anschauen und dann häppchenweise übertragen in sein eigenes Projekt.
Entmutigen wollte ich dich nicht! Ohne Neugier und Fleiß kommt man nicht weiter.....
Und man muß sich manchmal auch durchbeißen. Ich hatte vorhin auch stundenlang einen Fehler gesucht und wäre fast verzweifelt (war 'ne Sache mit ModalResult).
- Winni
- Beiträge: 1577
- Registriert: Mo 2. Mär 2009, 16:45
- OS, Lazarus, FPC: Laz2.2.2, fpc 3.2.2
- CPU-Target: 64Bit
- Wohnort: Fast Dänemark
Re: Mit Input Formel Rechen
Hi!
Fang doch mal z.B. mit einem Taschenrechner an.
Da "parst" Du ja auch zumindest nach den vier Grundrechenarten.
Und wenn Du Deinem Lehrer ein paar Schritte voraus sein möchtest, dann liest Du diese Unterrichts-Materialien:
https://unterrichten.zum.de/wiki/Lazaru ... Mathematik
Da steht Vieles drinn, was Du lernen möchtest. Step by step.
Winni
Fang doch mal z.B. mit einem Taschenrechner an.
Da "parst" Du ja auch zumindest nach den vier Grundrechenarten.
Und wenn Du Deinem Lehrer ein paar Schritte voraus sein möchtest, dann liest Du diese Unterrichts-Materialien:
https://unterrichten.zum.de/wiki/Lazaru ... Mathematik
Da steht Vieles drinn, was Du lernen möchtest. Step by step.
Winni