Описание исходного кода!

Запускаем Borland Delphi 7, Начинаем новый проект.
И так, что нам понадобится!?)
На форме ставим кнопки (компоненты TButton) для каждой цифры, для каждой операции и для очистки текстового поля. Еще нам понадобится две компоненты TEdit. Одну для ввода цифр и вывода результата, другую как для хранения (можно также объявить и глобальную переменную).

Наша форма теперь выглядит примерно вот так:

Спойлер

Форма калькулятора

[свернуть]

Так же нам понадобится глобальная переменная. У меня она называется eg тип данных числовой.

Размещение переменной:


public
{ Public declarations }
end;

var
Form1: TForm1;
eg: Integer;

implementation

{$R *.dfm}

Далее обработаем кнопки с цифрами. Каждая кнопка, при нажатия, будет вписывать в компоненту Edit1 цифры.
пример обработки кнопки под номер 1:

procedure TForm1.btn1Click(Sender: TObject);

begin
edt1.Text:= edt1.Text + '1';
end;

пример обработки кнопки под номер 2:


procedure TForm1.btn1Click(Sender: TObject);
begin
edt1.Text:= edt1.Text + '2';
end;

пример обработки кнопки под номер 3:

procedure TForm1.btn1Click(Sender: TObject);

begin
edt1.Text:= edt1.Text + '3';
end;

Так же не забываем про запятую:


procedure TForm1.btn11Click(Sender: TObject);
begin
edt1.Text:= edt1.Text + ',';
end;

Далее обрабатываем кнопки с математические операции:

Сложение:


procedure TForm1.btn13Click(Sender: TObject);
begin
edt2.Text:=edt1.Text;
edt1.Clear;
eg:=0;
end;

Вычитание:


procedure TForm1.btn14Click(Sender: TObject);
begin
edt2.Text:=edt1.Text;
edt1.Clear;
eg:=1;
end;

Умножение:


procedure TForm1.btn15Click(Sender: TObject);
begin
edt2.Text:=edt1.Text;
edt1.Clear;
eg:=2;
end;

Деление:


procedure TForm1.btn16Click(Sender: TObject);
begin
edt2.Text:=edt1.Text;
edt1.Clear;
eg:=3;
end;

Корень(sqrt):


procedure TForm1.btn17Click(Sender: TObject);
begin
edt2.Text:=edt1.Text;
eg:=4;
end;

Косинус:


procedure TForm1.btn19Click(Sender: TObject);
begin
edt2.Text:=edt1.Text;
eg:=5;
end;

Синус:


procedure TForm1.btn20Click(Sender: TObject);
begin
edt2.Text:=edt1.Text;
eg:=6;
end;

Вы наверно спросите, зачем присваивать переменой eg эти цифры!?
Ответ: “Все гениально и просто!” Дело в том что при помощи этих цифр мы будем знать какие операции будут выполнятся при нажатия на кнопки “ровно(=)”.
И так, далее обрабатываем кнопку “ровно”:


procedure TForm1.btn12Click(Sender: TObject);
begin
if eg=0 then edt1.Text:=FloatToStr(StrToFloat(edt2.Text)+strtoFloat(edt1.Text));
if eg=1 then edt1.Text:=FloatToStr(StrToFloat(edt2.Text)-strtoFloat(edt1.Text));
if eg=2 then edt1.Text:=FloatToStr(StrToFloat(edt2.Text)*strtoFloat(edt1.Text));
if eg=3 then edt1.Text:=FloatToStr(StrToFloat(edt2.Text)/strtoFloat(edt1.Text));
if eg=4 then edt1.Text:=FloatToStr(Sqrt(StrToFloat(Edt2.text)));
if eg=5 then edt1.Text:=FloatToStr(Cos(StrToFloat(edt2.Text)));
if eg=6 then edt1.Text:=FloatToStr(Sin(StrToFloat(edt2.Text)))
end;

Думаю что сейчас все стало понятно! =)
Ведь пользователю программы не интересен код программы! Ему главное что бы работало!
И последний штрих, кнопка “С – Clear”:


procedure TForm1.btn18Click(Sender: TObject);
begin
edt1.Clear;
edt2.Clear;
end;

Вот и все! Всем спасибо за внимание!
Если есть вопросы, просьба написать в комментарий!

Все авторские права защищены! Автор C0De-S © 2012
При копировании ОБЯЗАТЕЛЬНО ставить ссылку на статью!

Все материалы предоставлены исключительно в ознакомительных целях! Администрация Сайта не несет никакой ответственности за доступность этих ресурсов и за их контент

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *