Создадим проект «Калькулятор». Для этого поместите на форму строку ввода Edit, две панели Panel и 18 кнопок BitBtn (переименуйте их в В1-В18). Опишите в списке глобальных переменных: a, b, itog: real;//содержат числа и результат действия над ними
k: char;//содержит знак операции, выбранной пользователем
Опишем процедуру на щелчок по кнопке «0»:
procedure TForm1.b1Click(Sender: TObject);
Begin
edit1.text:=edit1.text+b1.Caption;//Добавляем к набранному в строку цифру, написанную на кнопке
end;
Аналогично опишите процедуры на кнопки «1»-«9»
Опишем процедуру на кнопку «,»:
procedure TForm1.b17Click(Sender: TObject);
Begin
if pos(',',edit1.text)=0 then
edit1.text:=edit1.text+b17.Caption;//если в строке еще не встречалась запятая, то добавить ее
end;
Процедура на «+»:
procedure TForm1.b15Click(Sender: TObject);
Begin
k:='+';
a:=strtofloat(edit1.text);
edit1.Clear;
end;
Аналогично опишите процедуры на кнопки «-», «*», «/»
Опишем процедуру на кнопку «sqrt»:
procedure TForm1.b11Click(Sender: TObject);
Begin
k:='s';
a:=sqrt(strtofloat(edit1.text));
edit1.text:=FloatToStr(a);
end;
Процедура на кнопку «=»
procedure TForm1.b14Click(Sender: TObject);
Begin
b:=StrToFloat(edit1.text);
case k of
'+': itog:=a+b;
'-': itog:=a-b;
'*': itog:=a*b;
's': itog:=a;
'/': if b<>0 then itog:=a/b else
Begin
showmessage('Деление на 0 запрещено!!!');
edit1.clear;
edit1.setfocus;
end;
end;
Edit1.text:=FloatToStrF(itog,ffFixed,13,3);
end;
Процедура на кнопку «С»:
procedure TForm1.В18Click(Sender: TObject);
Begin
edit1.Clear;
a:=0;
b:=0;
itog:=0;
edit1.setfocus;
end;