Need help! Suche Algorithmus
-
Hallo ich suche einen Algorithmus zur Lösung folgendes Problems:
Man hat sechs Gleichungen:num1 op1 num2 = num3
num4 op2 num5 = num6
num7 op3 num8 = num9num1 op4 num4 = num7
num2 op5 num5 = num8
num3 op6 num6 = num9Alle 6 Gleichungen müssen zur selben Zeit erfüllt sein.
op1-6: +,-,*,/
num1-9: Zahlen bis zu n-Ziffern
Alles ist frei wählbar.
Ich suche jetzt einen Algorihtmus der schnell und zuverlässig alle möglichen Kombinatinen findet und wenn er eine richtige hat das Ergebnis ausgibt.
Die Algorithmen die ich schon habe dauern viel zu lange. Ich komme immoment nicht auf eine einfachere Lösung, bin zu verfahren in meiner.
Bei mir sind das einfach nur ein paar for-Schleifen die hintereinander ablaufen, aber bei großen Zahlen kommt der einfach nicht auf ein Ergebnis. bzw. würde das ewig dauern.
Ich habe gehört das es vielleicht mit permutation und fakultäten gehen soll, aber nichts genaueres gefunden.Ich hoffe das mir einer weiterhelfen kann.
MfG
Oliver
-
Weiß denn keiner was?
-
ich weiss das ich mal was für c++ hatte, aber ich find nichts mehr
such mal bei google nach "gauß gleichungssysteme algorithmus"
hab z.b. mal das gefunden
is zwar nich besonders c, aber dürftest damit was anfangen könnenhier is btw. noch meine -> Googlesuche <-
-
Mit nem Gauß wirst du da nicht weit kommen, da das LGS überbestimmt ist. Aber als erster Ansatz ist er gut. Dann hat man die zu prüfenden Möglichkeiten schonmal minimiert.
-
Hallo!
In welcher Größenordnung liegt n?
Ohne weitere Bedingungen an die Operatoren wird ein Algorithmus der nur mögliche Kombinationen überprüft im allgemeinen kein zufriedenstellende Laufzeitverhalten zeigen.
Bsp.: Alle Operatoren sind '+'. Unter der Bedingung daß num1+num2+num4+num5 nicht mehr als n Ziffern hat können num1, num2, num4 und num5 beliebig gewählt werden. Die anderen num's ergeben sich aus den Gleichungen. Bei n=5 ergibt das bereits weit mehr als 10^16 Lösungen.
Alle möglichen Lösungen lassen sich daher nur in Form von Gleichungen angeben.
Was genau soll der gesuchte Algorithmus also leisten?
Wenn alles frei wählbar ist, also auch die Operatoren, dann dürfte es sehr viele mögliche Kombinationen geben...