Skip to content

Instantly share code, notes, and snippets.

@wero1414
Created February 20, 2016 01:10
Show Gist options
  • Save wero1414/e3cdecef00c4bbcc67c7 to your computer and use it in GitHub Desktop.
Save wero1414/e3cdecef00c4bbcc67c7 to your computer and use it in GitHub Desktop.
unit Calculadora;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.Buttons;
type
TForm2 = class(TForm)
operacion: TEdit;
B1: TSpeedButton;
B2: TSpeedButton;
B3: TSpeedButton;
B4: TSpeedButton;
B5: TSpeedButton;
B6: TSpeedButton;
B7: TSpeedButton;
B8: TSpeedButton;
B9: TSpeedButton;
B0: TSpeedButton;
Bp: TSpeedButton;
BI: TSpeedButton;
Suma: TBitBtn;
Resta: TBitBtn;
Multiplicacion: TBitBtn;
Division: TBitBtn;
Resultado: TLabel;
Rs: TEdit;
procedure B1Click(Sender: TObject);
procedure B2Click(Sender: TObject);
procedure B3Click(Sender: TObject);
procedure B4Click(Sender: TObject);
procedure B5Click(Sender: TObject);
procedure B6Click(Sender: TObject);
procedure B7Click(Sender: TObject);
procedure B8Click(Sender: TObject);
procedure B9Click(Sender: TObject);
procedure BpClick(Sender: TObject);
procedure B0Click(Sender: TObject);
procedure SumaClick(Sender: TObject);
procedure RestaClick(Sender: TObject);
procedure MultiplicacionClick(Sender: TObject);
procedure DivisionClick(Sender: TObject);
procedure BIClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form2: TForm2;
dato1:extended;
dato2:extended;
op:integer;
rs:extended;
implementation
{$R *.dfm}
/////////////Numeros/////////////////////
procedure TForm2.B0Click(Sender: TObject);
begin
operacion.Text:=operacion.Text+FloatToStr(0);
end;
procedure TForm2.B1Click(Sender: TObject);
begin
operacion.Text:=operacion.Text+FloatToStr(1);
end;
procedure TForm2.B2Click(Sender: TObject);
begin
operacion.Text:=operacion.Text+FloatToStr(2);
end;
procedure TForm2.B3Click(Sender: TObject);
begin
operacion.Text:=operacion.Text+FloatToStr(3);
end;
procedure TForm2.B4Click(Sender: TObject);
begin
operacion.Text:=operacion.Text+FloatToStr(4);
end;
procedure TForm2.B5Click(Sender: TObject);
begin
operacion.Text:=operacion.Text+FloatToStr(5);
end;
procedure TForm2.B6Click(Sender: TObject);
begin
operacion.Text:=operacion.Text+FloatToStr(6);
end;
procedure TForm2.B7Click(Sender: TObject);
begin
operacion.Text:=operacion.Text+FloatToStr(7);
end;
procedure TForm2.B8Click(Sender: TObject);
begin
operacion.Text:=operacion.Text+FloatToStr(8);
end;
procedure TForm2.B9Click(Sender: TObject);
begin
operacion.Text:=operacion.Text+FloatToStr(9);
end;
procedure TForm2.BIClick(Sender: TObject);
begin
if op=1 then
begin
dato2:=StrToFloat(operacion.Text);
dato1:=dato1+dato2;
Rs.text:=FloatToStr(dato1);
operacion.Text:='';
end;
if op=2 then
begin
dato2:=StrToFloat(operacion.Text);
dato1:=dato1-dato2;
Rs.text:=FloatToStr(dato1);
operacion.Text:='';
end;
if op=3 then
begin
dato2:=StrToFloat(operacion.Text);
dato1:=dato1*dato2;
Rs.text:=FloatToStr(dato1);
operacion.Text:='';
end;
if op=4 then
begin
dato2:=StrToFloat(operacion.Text);
dato1:=dato1/dato2;
Rs.text:=FloatToStr(dato1);
operacion.Text:='';
end;
end;
///////////Operaciones///////////////////////
procedure TForm2.BpClick(Sender: TObject);
begin
operacion.Text:=operacion.Text+'.';
end;
procedure TForm2.DivisionClick(Sender: TObject);
begin
dato1:=StrToFloat(operacion.Text);
op:=4; //4 para division
operacion.Text:=' ';
end;
procedure TForm2.MultiplicacionClick(Sender: TObject);
begin
dato1:=StrToFloat(operacion.Text);
op:=3; //3 para multiplicacion
operacion.Text:=' ';
end;
procedure TForm2.RestaClick(Sender: TObject);
begin
dato1:=StrToFloat(operacion.Text);
op:=2; //2 para resta
operacion.Text:=' ';
end;
procedure TForm2.SumaClick(Sender: TObject);
begin
dato1:=StrToFloat(operacion.Text);
op:=1; //1 para suma
operacion.Text:='';
end;
end.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment