Hallo,
ich versuche mich gerade an einem Programm was eine Quadratische Gleichung in der Form
ax² + bx + c = 0
lösen kann.
Ich habe es versucht und das Programm lässt sich auch ausführen doch wenn ich eine Berechnung starten will kommt eine Fehlermeldung und zeigt keine Lösung(en) an.
Vielleicht könnt ihr mir ja helfen. Vielen Dank schonmal im Vorraus.
Hier ist mein Quellentext:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var a, b, c, Diskriminante, Ls1, Ls2: Real;
LoesungText1, LoesungText2: String;
begin
//Eingabe; Umwandlung in Reele Zahlen
a := StrToFloat(Edit1.Text);
b := StrToFloat(Edit2.Text);
c := StrToFloat(Edit3.Text);
//Überprüfen ob es eine Quadratische Gleichung ist
if a = 0 then Label6.Caption := 'Keine Quadratische Gleichung!'
else //wenn es eine quadr. Gleichung ist, Gleichung lösen
begin
Diskriminante := b*b - 4*a*c;
//Überprüfen ob es eine Lösung gibt
if Diskriminante < 0 then Label6.Caption := 'Keine Lösung möglich!'
else
//Überprüfen ob es eine oder zwei Lösungen gibt
if Diskriminante = 0
then //Einzigste Lösung berechnen
begin
Label6.Caption := 'Es gibt nur eine Lösung!';
Ls1 := - b / (2*a);
LoesungText1 := FloatToStr(Ls1);
end
else //Zwei Lösungen berechnen
Ls1 := (- b + sqrt(Diskriminante)) / (2*a);
Ls2 := (- b - sqrt(Diskriminante)) / (2*a);
LoesungText1 := FloatToStr(Ls1);
LoesungText2 := FloatToStr(Ls2);
end;
LoesungText1 := Edt_x1.Text;
LoesungText2 := Edt_x2.Text;
end;
end.