Eine Zahl als Funktion eingeben

Für Fragen zur Programmiersprache auf welcher Lazarus aufbaut
Antworten
Benutzeravatar
Niesi
Lazarusforum e. V.
Beiträge: 331
Registriert: So 26. Jun 2016, 19:44
OS, Lazarus, FPC: Linux Mint Cinnamon (Windows wenn notwendig), Lazarus 3.0 FPC 3.3.1

Eine Zahl als Funktion eingeben

Beitrag von Niesi »

Hallo Alle,

in Tabellenkalkulationen ist es möglich, eine Zahl in Form einer Funktion einzugeben, z. B. "=12,5^0,5" in einer Zelle ergibt dann den recht genauen Wert für die Wurzel aus 12,5, nämlich 3,53553390593274.

Gibt es irgendwie eine "einfache" Möglichkeit, dies auch für FreePascal zu verwirklichen?

Ich stelle mir vor, dass ich in einen tEdit.Text die Funktion schreiben lasse und sie dann ausgewertet wird - ich kann allerdings überhaupt nichts finden, was mich auch nur annähernd einer Lösung näher bringt (gut, vielleicht suche ich falsch, aber dann gebt mir bitte das Suchwort. Parser ist es - glaube ich - nicht ...).

Beste Grüße
Niesi
Wissen ist das einzige Gut, das sich vermehrt, wenn es geteilt wird ...

wp_xyz
Beiträge: 4869
Registriert: Fr 8. Apr 2011, 09:01

Re: Eine Zahl als Funktion eingeben

Beitrag von wp_xyz »


Mathias
Beiträge: 6160
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Eine Zahl als Funktion eingeben

Beitrag von Mathias »

Geniale Unit, dieses kannte ich noch nicht. Damit könnte man recht einfach einen Taschenrechner programmieren.

Nur hat sich im Wiki ein kleiner Fehler eingeschlichen.
Diese Zeile musste ich ändern;

Code: Alles auswählen

FParser.AddFloatVariable('x', 0.5);              // alt
FParser.Identifiers.AddFloatVariable('x', 0.5)// neu


Ich habe das Wiki angepasst. :wink:
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Benutzeravatar
Niesi
Lazarusforum e. V.
Beiträge: 331
Registriert: So 26. Jun 2016, 19:44
OS, Lazarus, FPC: Linux Mint Cinnamon (Windows wenn notwendig), Lazarus 3.0 FPC 3.3.1

Re: Eine Zahl als Funktion eingeben

Beitrag von Niesi »

wp_xyz hat geschrieben:Schau dir mal http://wiki.lazarus.freepascal.org/How_ ... sionParser an.



Mache ich, Dankeschön.
Wissen ist das einzige Gut, das sich vermehrt, wenn es geteilt wird ...

Benutzeravatar
Niesi
Lazarusforum e. V.
Beiträge: 331
Registriert: So 26. Jun 2016, 19:44
OS, Lazarus, FPC: Linux Mint Cinnamon (Windows wenn notwendig), Lazarus 3.0 FPC 3.3.1

Re: Eine Zahl als Funktion eingeben

Beitrag von Niesi »

Mathias hat geschrieben:Geniale Unit, dieses kannte ich noch nicht. Damit könnte man recht einfach einen Taschenrechner programmieren.

Nur hat sich im Wiki ein kleiner Fehler eingeschlichen.
Diese Zeile musste ich ändern;

Code: Alles auswählen

FParser.AddFloatVariable('x', 0.5);              // alt
FParser.Identifiers.AddFloatVariable('x', 0.5)// neu


Ich habe das Wiki angepasst. :wink:



Oh - herzlichen Dank.
Wissen ist das einzige Gut, das sich vermehrt, wenn es geteilt wird ...

Antworten