Quadratische Gleichungen

Angabe

Erstelle ein Projekt, mit welchem quadratische Gleichungen gelöst werden können. (siehe Beispieldatei.) Die Koeffizienten a, b und c der quadratischen Gleichung ax²+bx+c=0 sollen in Edit-Feldern eingegeben werden können. Durch Klick auf den Button „Berechnen“ werden je nach Diskriminante (D=b²-4ac) keine Lösungen, eine oder zwei Lösungen ausgegeben.

Hinweis: Verwende #include <math.h> Damit kannst du die Wurzel sqrt(b*b-4*a*c) verwenden. Achte darauf, dass jeder Fall funktioniert: z.B. a=1, b=1, c=-6 –> Zwei Lösungen x1= 2,00 und x2=-3,00 a=1, b=1, c=1 –> Keine Lösungen a=1, b=-4, c=4 –> Eine Lösung x1=2,00

Stelle mittels eigens eingebundener Bibliothek sicher, dass nur Zahlen (inkl. Komma) eingegeben werden dürfen, dass die Berechnung nur dann erfolgt, wenn die Edit-Felder nicht leer sind und dass a nicht 0 sein darf!

Screenshot

Quadratische Gleichungen Screenshot

Lösung

Unit.cpp

//---------------------------------------------------------------------------
 
#include <vcl.h>
#pragma hdrstop
#include <math.h>
 
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
	: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
	   float a=0.0, b=0.0, c=0.0;
 
	   a=StrToFloat(Edit1->Text);
	   b=StrToFloat(Edit2->Text);
	   c=StrToFloat(Edit3->Text);
 
	   if(b*b-4*a*c>0)
	   {
		   Label8->Caption="Zwei";
		   Label9->Caption=(-b+sqrt(b*b-4*a*c))/(2*a);
		   Label10->Caption=(-b-sqrt(b*b-4*a*c))/(2*a);
	   }
	   if(b*b-4*a*c==0)
	   {
		   Label8->Caption="Eine";
		   Label9->Caption=-b/2*a;
		   Label10->Caption="-";
	   }
	   if(b*b-4*a*c<0)
	   {
		   Label8->Caption="Keine";
		   Label9->Caption="-";
		   Label10->Caption="-";
	   }
}
 
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
	Close();
}
//---------------------------------------------------------------------------

Download

05QuadratischeGleichungen.zip