Een vierkantsvergelijking \(ax^2+bx+c=0\) met coëfficienten \(a, b, c \in \mathbb{R}\) heeft
geen reële wortels als \(\Delta = b^2-4ac < 0\),
één reële wortel, namelijk \(x=\frac{-b}{2a}\) als \(\Delta=0\)
twee reële wortels, namelijk \(x=\frac{-b \pm \sqrt{\Delta}}{2a}\) als \(\Delta>0\)
In het hoofdprogramma lees je de coëfficiënten van de vierkantsvergelijking (\(a, b, c\)) in. Elke reëel getal komt op een afzonderlijke regel.
Het programma schrijft eerst uit hoeveel reële wortels de vierkantsvergelijking heeft: “geen wortels”, “een wortel” of “twee wortels”. Als er één reële wortel is, schrijf deze dan uit als tweede regel van de uitvoer. Als er twee reële wortels zijn, schrijf beide dan uit als tweede en derde regel van de uitvoer, waarbij de kleinste oplossing op regel twee staat (zie voorbeelden).
De vierkantsvergelijking \(x^2 - 5x + 6\).
>>> main()
twee wortels
2.0
3.0
De vierkantsvergelijking \(x^2 - 2\).
>>> main()
geen wortels
De vierkantsvergelijking \(x^2 - x + 0.25\).
>>> main()
een wortel
0.5
Je moet het hoofdprogramma toevoegen in de gegeven procedure main()
.
Er wordt gevraagd om de drie coëfficiënten a, b, c
op aparte regels in te voeren.
Gebruik drie keer input
en zet de ingelezen string telkens om naar een reëel getal met float
.
if-else
?gebruik een elif
Waarschijnlijk probeer je de vierkantswortel te berekenen van een negatieve discriminant.
Bereken eerst de discriminant, en start daarna onmiddellijk met de if-else
De volledige berekening en het printen van de resultaten doe je in het if
-, elif
of else
-blok.
Om de nulpunten te berekenen moet je delen door 2a
. Gebruik haakjes in de code!
Het aantal decimalen dat je uitschrijft is in deze oefening niet belangrijk.
Er zal iets anders verkeerd zijn!
Er wordt gevraagd om altijd eerst de kleinste oplossing uit te schrijven!
Voeg een extra if-else
toe.