Problem mit PQ formel



  • hallo leute
    ich hab mal wieder nen kleines problem.
    ich wollte mal nen tool schreiben was mit die nullstellen mit hilfe der pq-formel ausgerechnet.

    jedoch wenn ich berechnen drücke, schreiben sich in x²,x,q die zahl -1.07374e+

    und in den lösungsfeldern x1 und x2 steht -1.#IND
    egal was für werte ich eingebe
    code sieht so aus:

    void CPqFormelDlg::OnRechner() 
    {
    
        UpdateData(TRUE);
    
        float x1,x2,x3;
    
        m_iXQuadrat = x1;
        m_iXNormal  = x2;
        m_iQNormal  = x3;
    
        if(x1 != 1)
        {
            x2 = x2 / x1;
            x3 = x3 / x1;
    
            m_ix1= -x2/2 + sqrt(((x2/2)*(x2/2)) - x3);//m_ix1=editbox mit ergebnis für x1 
            m_ix2= -x2/2 - sqrt(((x2/2)*(x2/2)) - x3);
    
            UpdateData(FALSE);
        }
    

    alle variablen sind als float deklariert

    jmd ne idee



  • float x1,x2,x3;

    hierbei erhalten x1 - x3 zufällige Werte. Da ich nirgens eine zuweisung sehe
    wirst Du immer mit irgendwelchen Werten rechnen.

    Ich schätze es sollte heissen:

    x1 = m_iXQuadrat;
    x2 = m_iXNormal;
    x3 = m_iQNormal;

    Denn umgekehrt machst Du Dir die Werte in m_iXQuadrat etc. auch noch platt.



  • vor lauter bäumen den wald nicht sehen.

    danke:)
    ich hasse es 😛



  • Moin,
    is zwar kein Programmiertechnisches Problem, aber ist es nicht besser anstelle der PQ-Formel die quadratische Ergänzung zu benutzen, da die PQ-Formel eine höhere Quelle darstellt.



  • 🤡



  • Höhere Quelle?


Anmelden zum Antworten