Char's logisch verUNDen für Gleichung (NULLSTELLEN)



  • Habe vor ein kleines Prog. zu schreiben, dass mir schnell die Nullstellen ermitteln soll.

    Dabei geht es um eine Funktion 4 Grades.

    Die einzelnen Plus oder Minus sollen über Listenfelder angeklickt werden.

    Wie realisiere ich es dass die Plus/ Minus in meiner Gleichung Bedeutung finden.
    Anstatt nur entweder + / - zu rechnen.

    Zur Veranschaulichung:
    f(x)=pow(dX4,4)+pow(dX3,3)+pow(dX2,2)+dX1+dX

    Kam auf die Idee:

    char s[1];
    s[0]='+';
    s[1]='-';

    f(x)=pow(dX4,4)&&s[0]||s[1]&&pow(dX3,3)&&s[0]||s[1]&&pow(dX2,2)&&s[0]||s[1]...

    Wäre das so richtig?

    Mir soll das Ergebnis in einem Static ausgegeben werden.
    Es wird lediglich nur 1 ausgegeben. (die Fkt. zu den Eingabefeldern sind UpdateFkt. => Ergebnis wird sofort neu berechnet (UpdateData...) )

    Wie kriege ich es also hin das jeweilige + / - in die Gleichung mit einzubringen?


  • Mod

    Indem du jeden einzelwert mit -1 entspechend multiplizierst.
    Gleichungen werden aber normalerweise nicht in dieser Form geschrieben, sondern:
    f(x)=m4*pow(x,4)+m3*pow(x,3)+m2*pow(x,2)+m1*x+m0

    BTW: Durch geschickte Klammerung kann man das einfacher haben:
    f(x)=((((m4*x)+m3)*x+m2)*x+m1)*x+m0

    Dadurch kann mein einen einfachen Array aufbauen und eine entsprechende Schleife drüber laufen lassen.



  • Danke!!

    Guter Tip mit den Klammern!!!!


Log in to reply