. -, , . -, a = 0, , . . , .. C++ Builder . . , . , . - , . , Tapplication.HandleException. .
try catch:
try
{
//, //
}
catch ( &e)
{
// ,
}
() .
++ Builder . , : EConvertError, c ( , StrToFloat), EZeroDivdide, .
Button1Click .
void __fastcall TForm1::Button1Click(TObject *Sender)
{
float a,b,c,d,x1,x2;
try
{
a=StrToFloat(Edit1->Text);
b=StrToFloat(Edit2->Text);
c=StrToFloat(Edit3->Text);
}
catch(EConvertError &e)
{
ShowMessage(" !");
return;
}
d=b*b-4*a*c;
if (d>=0)
{
try
{
x1=(-b-sqrt(d))/(2*a);
x2=(-b+sqrt(d))/(2*a);
}
catch(EZeroDivide &e)
{
ShowMessage(" !");
return;
}
Edit4->Text=FloatToStr(x1);
Edit5->Text=FloatToStr(x2);
}
else
ShowMessage(" ");
}
.
!!! , . Run, . , , .