Input/Output PQ-Formel wird nicht richtig berechnet

Philipp0349

Mitglied
Hallo Leute hab ein Problem ich muss ein Programm schreiben zur Kurvendiskussion wo unter anderen Nullstellen berechnet werden sollen soweit so gut. hab alles eingegeben aber die Berechnung kommt (teilweise) nicht auf die richtigen Ergenisse:
Meine Formeln lauteten:
1) f(x)= 9x^2 - 36x +36
2) f(x)= x^2 - 4x + 4

müsste jewals eine Doppelte Nullstelle bei 2 sein aber bei der 1. Formel kommt immer
das raus: 34.970562748477136 und 1.029437251522861

Hier ist der Code für die Berechnung (den main-Teil spar ich mir mal)

Java:
            int d;
            d = (b/2)*(b/2)-c;
            if (d >= 0) {
              double x1,x2;
              x1 = -(b/2) + Math.sqrt (d);
              x2 = -(b/2) - Math.sqrt (d);
              if (x1==x2){
                  System.out.println("Das Ergebnis ist L={"+x2+"}");   
              }
              else {
                  System.out.println("Die Ergebnisse sind L={"+x1+";"+x2+"}");
              }
            }
            else {
                System.out.println("Keine Lösung, die Diskriminate ist "+d);
            }
        }
}
 
Du musst die erste Formel zum Zwecke der Nullstellenberechnung auch erstmal in die p/q-Form `x^2 + px + q` bringen. Die zweite Formel hat bereits diese Form, aber die erste ja nicht, weil sie einen Faktor für x^2 hat, nämlich 9. Also:
9x^2 - 36x +36 = 0 | / 9
1x^2 - 4x + 4 = 0
Jetzt ist p=-4 und q=4. Und die Nullstelle ist x=2.

EDIT: @mihe7 hat's bereits mit weniger Worten gesagt. 🙂
 
Du solltest die Werte als double deklarieren, zumindest bei mir kommt dann auch 2 als Ergebnis raus (für die erste natürlich nur, wenn normalisiert).
 

Neue Themen


Zurück
Oben