Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Mathematische Umformung (https://www.delphipraxis.net/63274-mathematische-umformung.html)

TheAn00bis 16. Feb 2006 07:59


Mathematische Umformung
 
Hey,

gibt es eine Möglichkeit ein Polynom der Form (x-13)*(x-16)*(x-19) mithilfe von Delphi korrekt umzuformen?

Also, dass jede Klammer mit jeder Klammer korrekt multipliziert wird und dementsprechend aus x dannn x^2 usw wird?


Es soll beliebig viele Faktoren haben können.

Edit: Ich dachte da vor allem an irgenwelche Gesetzmäßigkeiten... bei obrigen weiß ich ja schonmal, dass es ein Polynom der Form a*x^3+b*x^2+c*x+d wird.

Edit2: Auch für ein bereits vorhandenes Programm, dass meine Ansprüche erfüllt wäre ich dankbar!

Schaedel 16. Feb 2006 08:26

Re: Mathematische Umformung
 
Copy von 2. Stelle bis stelle vom * -2
Dann schauen ob buchstabe oder Zahl.
Wenn Zahl dann multiplizieren ... wenn keine Zahl und die beiden Werte = sind x² ... wenn nicht = dann 'x'+'a'...

Ich denke nicht das es anders funktioniert...

TheAn00bis 16. Feb 2006 09:54

Re: Mathematische Umformung
 
Zitat:

Zitat von Schaedel
Copy von 2. Stelle bis stelle vom * -2
Dann schauen ob buchstabe oder Zahl.
Wenn Zahl dann multiplizieren ... wenn keine Zahl und die beiden Werte = sind x² ... wenn nicht = dann 'x'+'a'...

Ich denke nicht das es anders funktioniert...

Ich verstehe nicht wie du das meinst. Was heißt denn "Copy von 2. Stelle bis stelle vom * -2"?

Schaedel 16. Feb 2006 10:21

Re: Mathematische Umformung
 
Du hast ja eine StringVariable oder eine Eingabe(auch String) in der der Term steht.

Mit copy kannst du einzelne Teile aus einem String herauskopieren.

Also und da du z.b.
(x-13)*(x-16)*(x-19)
in deinem String stehen hast kannst du doch von der 1. Stelle des Strings ein Copy bis zur position der Klammer-1.
Dann hast du quasi das "x-13" in deinem Teilstring stehen.
Nun kannst du das gleiche mit dem Teil machen.
Dann hast du in deinem 2. Teilsting " x-16" das stehen.

Nun überprüfst du die 1. Stelle deiner beiden Teilstrings ob diese Buchstaben oder Zahlen sind und wenn sie Buchstaben sind auf Gleichheit.
Wenn Gleichheit dann x²wenn keine Gleichheit dann fügst du die beiden Chars einfach zusammen.
Mit den Zahlen sollte das ja weniger das Problem sein ...


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