//---------------------------------------------------------------------------
// Проект 2. Сумматор двух чисел
// Ввод чисел через Edit, обработка ошибок StrToFloat.
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner)
{
}
//---------------------------------------------------------------------------

// Читаем два числа из полей ввода. StrToFloat кидает исключение на мусоре —
// ловим его и подсказываем пользователю, а не роняем программу.
bool ReadFloat(TEdit *e, double &out)
{
    try { out = StrToFloat(e->Text); return true; }
    catch (...) { return false; }
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ButtonSumClick(TObject *Sender)
{
    double a, b;
    if (!ReadFloat(EditA, a)) { LabelResult->Caption = "A: не число"; return; }
    if (!ReadFloat(EditB, b)) { LabelResult->Caption = "B: не число"; return; }
    LabelResult->Caption = "Сумма: " + FormatFloat("0.######", a + b);
}
//---------------------------------------------------------------------------
