![]() |
|
|
|
|
#1
|
|||
|
|||
|
Вот задание: Обработка исключительных ситуации (try-except)
![]() Проверьте формулу пожалуйста так или нет??: Код:
procedure TForm1.Image1Click(Sender: TObject);
var x,y,z:integer; v:real; arcsin:real;
begin
try
x:=strtoint(edit1.Text);
y:=strtoint(edit2.Text);
z:=strtoint(edit3.Text);
v:=(sqrt(10)*(sqr(x+x)*(sqrt(y+2))*(arcsin*(sqrt(z-x-y)))));
label4.caption:=floattostr(v);
except
on EConvertError do showmessage ('Введите целые числа');
on EDivByZero do showmessage('не делить на 0');
end;
end;
end. |
|
#2
|
||||
|
||||
|
Цитата:
напишите за меня формулу, потому что я не умею и не хочу ничего знать, а люблю готовое? |
|
#3
|
||||
|
||||
|
В реализации формулы есть ошибки. Дам три совета:
1. Не путайте возведение в квадрат и квадратный корень 2. Для упрощения строчки v:=... воспользуйтесь дополнительными переменными для упрощения алгоритма. 3. try-except нужен не для вывода месседжей, а для освобождения ресурсов. 4. Стилистическое: в данном случае лучше вместо ShowMessage использовать создание объекта класса Exception |
|
#4
|
|||
|
|||
|
Цитата:
|
|
#5
|
|||
|
|||
|
Цитата:
|
|
#6
|
||||
|
||||
|
Цитата:
![]() |