Seminar/DKS
Aus ProgrammingWiki
Wiki-Quelltext dieser Seite.
<language>Pascal</language>
<b>Quadratische Lösungsformel</b>
Entwickle ein Programm, dass bei der Vorgabe von <math>p</math> und <math>q</math> für eine quadratische Gleichung der Form <math>x^2 + px + q = 0</math> die Lösungen berechnet und ausgibt.
Beachte, dass es auch genau eine oder keine Lösung geben kann.
<i>Tipp:</i>
Verwende die Lösungsformel <math>x_{1,2} = - \frac{p}{2} \pm \sqrt{(\frac{p}{2})^2 - q}</math>. Bestimmt zunächst die Diskriminante <math>D</math>.
<code id="4f200de2dfe59">
procedure QuadratischeLoesung(p, q : real);
var
D : real;
x1, x2 : real;
begin
writeln('Berechnung von: x^2 + '+FloatToStr(p)+'x + '+FloatToStr(q)+' = 0');
D := sqr(p / 2.0) - q;
writeln('Diskriminante: '+FloatToStr(D));
if (D < 0) then
begin
writeln('Es gibt keine Lösung!');
end
else if (D = 0) then
begin
writeln('Es gibt genau eine Lösung:');
x1 := - p / 2.0;
writeln('x = '+FloatToStr(x1));
end
else
begin
writeln('Es gibt genau zwei Lösungen:');
x1 := - p / 2.0 + sqrt(D);
x2 := - p / 2.0 - sqrt(D);
writeln('x1 = ' + FloatToStr(x1));
writeln('x2 = ' + FloatToStr(x2));
end;
end;
</code>
<run id="4f200bfc77a43">
QuadratischeLoesungsformel(2.0, 1.0);
</run>