Показать сообщение отдельно
  #3  
Старый 09.11.2010, 15:27
doctordradd doctordradd вне форума
Прохожий
 
Регистрация: 20.10.2010
Сообщения: 18
Репутация: 10
По умолчанию

Сделал так:
Код:
procedure TForm1.Edit1Change(Sender: TObject);
var
  i,j: integer;
begin
  if TryStrToInt(Edit1.Text, i) and TryStrToInt(Edit2.Text, j)
  then Label1.Caption:=Floattostr(trunc((i+j)/2*100)/100)
  else Label1.Caption:=Floattostr(trunc((i+j)/1*100)/100);
end;

procedure TForm1.Edit2Change(Sender: TObject);
var
  i,j: integer;
begin
  if TryStrToInt(Edit1.Text, i) and TryStrToInt(Edit2.Text, j)
  then Label1.Caption:=Floattostr(trunc((i+j)/2*100)/100)
  else Label1.Caption:=Floattostr(trunc((i+j)/1*100)/100);
end;

Теперь при вводе в Edit1 и пустом Edit2 показывает правильный результат, но при вводе в Edit2 выдает ошибку результата, непонятное число...
Есть вычисления с 4-5 полями(для этого и округление до сотых), при этом, если поле или поля пустые, не должны участвовать...
Подкажите, пожалуйста, как реализовать это.
Спасибо
Ответить с цитированием