Membuat Kalkulator di Delphi 7

Source code

unit kalkulator;
interface


uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;


type

    TForm1 = class(TForm)
    edit: TEdit;
    Tiga: TButton;
    Dua: TButton;
    Satu: TButton;
    Tambah: TButton;
    kurang: TButton;
    bhasil: TButton;
    procedure bhasilClick(Sender: TObject);
    procedure TambahClick(Sender: TObject);
    procedure kurangClick(Sender: TObject);
    procedure TigaClick(Sender: TObject);
    procedure DuaClick(Sender: TObject);
    procedure SatuClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);

  private

        { Private declarations }

  public

        { Public declarations }
        procedure pjumlah;
        procedure pkurang;

  end;


  var

       Form1: TForm1;
       total: Integer;
       nilai: Integer;

  op: char;

implementation
procedure TForm1.pjumlah;
begin
  total:=total+nilai;
  edit.Text:=inttostr(total);

end;

procedure TForm1.pkurang;
begin
  total:=total-nilai;
  edit.Text:=inttostr(total);

end;

{$R *.dfm}
 
procedure TForm1.TigaClick(Sender: TObject);
begin
    edit.Text:='3';
end;

procedure TForm1.DuaClick(Sender: TObject);
begin
    edit.Text:='2';
end;

procedure TForm1.SatuClick(Sender: TObject);
begin
    edit.Text:='1';
end;


procedure TForm1.kurangClick(Sender: TObject);
begin
  nilai:=strtoint(edit.Text);

if (total>0) then

  begin
     if(op = '+') then
       begin
         pjumlah;  // hasil dari pergantian ( '+' ke '-' ) tanpa eksekusi '=' terlebih dahulu
       end
     else
       begin
         pkurang;  // hasil dari operator : '-'
       end;
  end

else
  begin
    total:=nilai
  end;
    op:='-';

end;

procedure TForm1.TambahClick(Sender: TObject);
begin
nilai:=strtoint(edit.Text);

if (total>0) then
  begin
     if(op = '-') then
       begin
         pkurang; // hasil dari pergantian ( '-' ke '+' ) tanpa eksekusi '=' terlebih dahulu
       end

     else
       begin
         pjumlah;  // hasil dari operator : '+'
       end;
  end

else
  begin
    total:=nilai
  end;
    op:='+';

end;

procedure TForm1.bhasilClick(Sender: TObject);
begin

  if(op = '+') then
    begin
      total:=total+strtoint(edit.Text);
      edit.text:=inttostr(total);
      total:=0; // supaya nilai total kembali ke awal yaitu 0
    end

  else if(op = '-') then
    begin
      total:=total-strtoint(edit.Text);
      edit.text:=inttostr(total);
      total:=0; // supaya nilai total kembali ke awal yaitu 0
    end;

end;
 
Hasil  RUN
Previous
Next Post »