Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Koeffizienten addieren/multiplizieren (https://www.delphipraxis.net/161194-koeffizienten-addieren-multiplizieren.html)

Androxin 21. Jun 2011 23:25

Koeffizienten addieren/multiplizieren
 
Moin, moin.

Ich habe hier zwei Polynome die aus einer Textdatei mit leerzeichengetrennten Koeffizienten ausgelesen werden.
Nun möchte ich die beiden Koeffizientenlisten addieren bzw. multiplizieren, damit ich eine neue Liste bekomme.

Das Berechnen der Polynome klappt super. Auch wenn ich einfach die Ergebnisse der einzelnen Berechnungen verwurste.
Aber ich kriege es nicht hin zwei Koeffizienten-Listen zu einer zusammen zu fassen.

Kann mir da jemand unter die Arme greifen?

Bsp:

Code:
(x^3+6x^2+x-5) * (2x^2+x+4) = 2x^5 + 13x^4 + 12x^3 + 15x^2 - x - 20

-5 1 6 1 (Polynom 1)
 4 1 2 (Polynom 2)
=
-20 -1 15 12 13 2 (Beide Polynome multipliziert)

jfheins 21. Jun 2011 23:55

AW: Koeffizienten addieren/multiplizieren
 
Einfach ausmultiplizieren?
Wenn du die Polynome in 2 Arrays hast:
Polynom1:
a[0]=1
a[1]=6
a[2]=1
a[3]=-5

und zwei:
b[0]=2
b[1]=1
b[2]=4

Und Ergebnis c[]
==>
Delphi-Quellcode:
for i := 0 to 3 do
  for j := 0 to 2 do
    c[i+j] := c[i+j] + a[i] * b[j];
Die Grenzen festzulegen überlasse ich jetzt mal dir ;)

Androxin 22. Jun 2011 00:07

AW: Koeffizienten addieren/multiplizieren
 
So einfach hätte ich mir das jetzt nicht vorgestellt ;-)

Und wie ist es mitm Addieren? Hast du da auch so eine geile Patenlösung?

jfheins 22. Jun 2011 00:15

AW: Koeffizienten addieren/multiplizieren
 
Addieren ist ja mal noch einfacher - du musst die Koeffizienten an den jeweiligen Stellen addieren.
Also c[i] = a[i] + b[i];
Natürlich vorher die Grenzen ermitteln ;)

Androxin 22. Jun 2011 00:17

AW: Koeffizienten addieren/multiplizieren
 
Zitat:

Zitat von jfheins (Beitrag 1107649)
Addieren ist ja mal noch einfacher

Hm. Stimmt. Das ist ZU einfach. ;-)

Jetzt muss ich das ganze mit meiner dynamischen Liste hinbekommen...


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:27 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 by Thomas Breitkreuz