Описание исходного кода!
Запускаем 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
При копировании ОБЯЗАТЕЛЬНО ставить ссылку на статью!
Все материалы предоставлены исключительно в ознакомительных целях! Администрация Сайта не несет никакой ответственности за доступность этих ресурсов и за их контент