PDA

Просмотр полной версии : Ошибка


zanndr
24.02.2011, 04:46
Пытался сделать калькулятор , для начала делал основные действия такие как плюс минус делить умножить , он работает , но вылетает с ошибкой если делить на 0. Хотел исправить , сделал так:

procedure Tkalkul.bravnoClick(Sender: TObject);
begin
case mode of
1: begin
y:= StrToFloat(Edit1.Text);
z:= x+y;
Edit1.Text:= FloatToStr(z);
end;
2: begin
y:= StrToFloat(Edit1.Text);
z:= x-y;
Edit1.Text:= FloatToStr(z);
end;
3: begin
y:= StrToFloat(Edit1.Text);
If y:= '0' then
Edit1.Text:= ('На ноль не делица');
else
z:= x/y;
Edit1.Text:= FloatToStr(z);
end;
4: begin
y:= StrToFloat(Edit1.Text);
z:= x*y;
Edit1.Text:= FloatToStr(z);
end;

end;
end;
end.

Но показывает на эту строчку:
If y:= '0' then
И пишет такую ошибку:
[Ошибка] Unit1.pas(184): Type of expression must be BOOLEAN
В чем проблема? Вроде по идее , если y (второе число) равно 0 , то в едите пишется на ноль не делится , а если не ноль , то считает...
Заранее спасибо.

*Rakim*
24.02.2011, 05:42
[Ошибка] Unit1.pas(184): Type of expression must be BOOLEAN
Вот перевод твоей ошибки :
[Ошибка] Unit1 .pas (184): Тип выражения должен быть ЛОГИЧЕСКИМ

А что делать я ХыЗы

Dinmaite
24.02.2011, 09:13
if y = 0 then