Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Rechner, der mit Variablen rechnen kann (https://www.delphipraxis.net/8170-rechner-der-mit-variablen-rechnen-kann.html)

Matze 29. Aug 2003 19:06


Rechner, der mit Variablen rechnen kann
 
Hi!

Es koingt etwas blöd, aber kann man einen Rechner programmieren, der mit Variablen rechnen kann?
Damit meine ich

Delphi-Quellcode:
Eingabe:   |    Ausgabe:
------------|----------- 
a*a        |    a²
a²+2ab+b²   |    a²+b²
5x-3y-x    |    4x-3y

...
Geht sowas, oher ist es so kompliziert, dass ich es sofort vergessen kann. :mrgreen:

Baumel 29. Aug 2003 21:23

Re: Rechner, der mit Variablen rechnen kann
 
Hallo,
du meinst symbolisch vereinfachen, berechnen, diff., integr. ...?
Ja es geht. Such mal im Web mit dem Stichwort symbolisch ...

Wofür willst du es nutzen? Einfach mal zum experimentieren? Imho isses mit Scheme/Lisp (funktionale Programmiersprache?) leichter zu implementieren.

Gruß
Dirk

Baumel 29. Aug 2003 21:33

Re: Rechner, der mit Variablen rechnen kann
 
Hi nochmal,
hier ein paar interessante Links


An Index to Numerical Methods in Pascal

Delphi Math Functions

N'Abend
Dirk

overmoon 29. Aug 2003 21:34

Re: Rechner, der mit Variablen rechnen kann
 
Du möchtest ja nicht richtig mit Variablen Rechnen, sondern vielmehr mathematische Therme vereinfachen.

Es gibt sogar bereits Programme, die das können; z.b. Derive (war ein sehr praktisches Programm für den Mathe-LK) kann das.

Ich stelle mir das durchaus möglich vor; werde mich bei Gelegenheit vielleicht mal ransetzen.

z.B. Therme der Art:
5x-2y+4x+4y
sollten nicht so kompliziert sein,
da du dich da nur auf die Koeffizienten stürzen musst und diese je nach Vorzeichen addieren oder subtrahieren. Für jede Variable hinter den Zahlen nimmst du ein neuen Platz in einem dynamischen Array und das wars schon.

Unter Umständen ist es sinnvoll aus dem EingabeString zunächst eine Tokenliste zu erstellen. Für das Umwandeln der Zahlen bietet sich ein "Endlicher Automat" (-> Automatentherie) an.

Bei a²+2ab+b² zu (a+b)² ist das schon komplizierter. Denn welche Darstellungsweise ist besser ? Da müsstest du wohl besser zwei Methoden machen; eine zum "Ausklammern" und eine zum "Ausmultiplizieren".

overmoon

ps:
a²+2ab+b² = (a+b)²

Matze 30. Aug 2003 09:21

Re: Rechner, der mit Variablen rechnen kann
 
Hi!

Danke euch beiden.

@Baumel: Ich werde mir deine Links einmal genauer anschauen, es sieht so aus, als wäre da etwas gutes dabei. :D

@overmoon: Das Programm Derive werde ich mir auch mal anschauen. Selber proggen werde ich mal versuchen, ich glaube aber nicht, dass ich das schaffe. ;)
Ich meinte (a+b)² ==> sind aber Ferien, da verlernt man so etwas schnell. ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:10 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