Rabu, 02 November 2011

Kalkulator Sederhana dengan Delphi 7


pingin buat kalkulator pakai delphi?
ni aku kasih codenya


unit Unit1;

interface

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

Type


  TForm1 = class(TForm)
    hasil: TEdit;
    satu: TButton;
    dua: TButton;
    tiga: TButton;
    empat: TButton;
    lima: TButton;
    enam: TButton;
    tujuh: TButton;
    delapan: TButton;
    sembilan: TButton;
    nol: TButton;
    plussmin: TButton;
    titik: TButton;
    sapi: TButton;
    minus: TButton;
    kali: TButton;
    bagi: TButton;
    akar: TButton;
    persen: TButton;
    per: TButton;
    samadengan: TButton;
    naruto: TButton;
    delet: TButton;
    Bce: TButton;

  
 Button1: TButton;


    procedure satuClick(Sender: TObject);
    procedure duaClick(Sender: TObject);
    procedure tigaClick(Sender: TObject);
    procedure empatClick(Sender: TObject);
    procedure limaClick(Sender: TObject);
    procedure enamClick(Sender: TObject);
    procedure tujuhClick(Sender: TObject);
    procedure delapanClick(Sender: TObject);
    procedure sembilanClick(Sender: TObject);
    procedure nolClick(Sender: TObject);
    procedure plussminClick(Sender: TObject);
    procedure titikClick(Sender: TObject);
    procedure sapiClick(Sender: TObject);
    procedure minusClick(Sender: TObject);
    procedure kaliClick(Sender: TObject);
    procedure bagiClick(Sender: TObject);
    procedure akarClick(Sender: TObject);
    procedure persenClick(Sender: TObject);
    procedure perClick(Sender: TObject);
    procedure samadenganClick(Sender: TObject);
    procedure narutoClick(Sender: TObject);
    procedure deletClick(Sender: TObject);
    procedure BceClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);


 private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  a,b,e : real;
  p,q,y,c : string;
  pijit,indikator:integer;
implementation

{$R *.dfm}

procedure TForm1.satuClick(Sender: TObject);

begin
if hasil.Text='0' then
p := '1'
else
begin
if indikator = 1 then
begin
                                     p := '1';
indikator := 0;
end
else
p := p + '1';
end;
hasil.Text := p;
end;

procedure TForm1.duaClick(Sender: TObject);

begin
if hasil.Text='0' then
p := '2'
else
begin
if indikator = 1 then
begin
p := '2';
                        indikator := 0;
            end
else
p := p + '2';
end;
hasil.Text := p;
end;

procedure TForm1.tigaClick(Sender: TObject);

begin
if hasil.Text='0' then
p := '3'
else
begin
if indikator = 1 then
begin
p := '3';
indikator := 0;
end
else
p := p + '3';
end;
hasil.Text := p;
end;

procedure TForm1.empatClick(Sender: TObject);

begin
if hasil.Text='0' then
p := '4'
else
begin
if indikator = 1 then
            begin
p := '4';
indikator := 0;
end
else
p := p + '4';
end;
hasil.Text := p;
end;

procedure TForm1.limaClick(Sender: TObject);

begin
if hasil.Text='0' then
p := '5'
else
begin
if indikator = 1 then
begin
p := '5';
indikator := 0;
end
else
p := p + '5';
end;
hasil.Text := p;
end;

procedure TForm1.enamClick(Sender: TObject);

begin
if hasil.Text='0' then
p := '6'
else
begin
if indikator = 1 then
begin
p := '6';
indikator := 0;
end
else
p := p + '6';
end;
hasil.Text := p;
end;

procedure TForm1.tujuhClick(Sender: TObject);
begin
if hasil.Text='0' then
p := '7'
else
begin
if indikator = 1 then
            begin
                        p := '7';
                        indikator := 0;
            end
else
                        p := p + '7';
            end;
hasil.Text := p;
end;

procedure TForm1.delapanClick(Sender: TObject);

begin
if hasil.Text='0' then
p := '8'
else
begin
if indikator = 1 then
            begin
                        p := '8';
                        indikator := 0;
            end
else
                        p := p + '8';
            end;
hasil.Text := p;
end;

procedure TForm1.sembilanClick(Sender: TObject);

begin
if hasil.Text='0' then
p := '9'
else
begin
if indikator = 1 then
            begin
                        p := '9';
                        indikator := 0;
            end
else
                        p := p + '9';
            end;
hasil.Text := p;
end;

procedure TForm1.nolClick(Sender: TObject);

begin
if indikator = 1 then
            begin
                        p := '0';
                        indikator := 0;
            end
else
if hasil.Text = '0' then
p := '0'
else
p := p + '0';
hasil.Text := p;
end;

procedure TForm1.plussminClick(Sender: TObject);

var
angka   : string;
d          : real;
begin
angka := hasil.Text;
d:=strtofloat(hasil.Text);
if d<0 then
            begin
                        d:=d*(-1);
                        hasil.Text:=floattostr(d);
                        end
else
            begin
                        if d<>0 then
            begin
                        angka := '-'+angka;
                        hasil.Text:=angka;
            end
  end
end;

procedure TForm1.titikClick(Sender: TObject);

begin
if pijit<1 then
p := p + ',';
hasil.Text := p;
pijit:=pijit+1;
end;

procedure TForm1.sapiClick(Sender: TObject);

begin
pijit:=0;
a:=strtofloat(hasil.Text);
hasil.Text:='';
p:='';
c:='+';
end;



procedure TForm1.minusClick(Sender: TObject);

begin
pijit:=0;
a:=strtofloat(hasil.Text);
hasil.Text:='';
p:='';
c:='-';
end;

procedure TForm1.kaliClick(Sender: TObject);

begin
pijit:=0;
a:=strtofloat(hasil.Text);
hasil.Text:='';
p:='';
c:='*';
end;

procedure TForm1.bagiClick(Sender: TObject);

begin
pijit:=0;
a:=strtofloat(hasil.Text);
hasil.Text:='';
p:='';
c:='/';
end;

procedure TForm1.akarClick(Sender: TObject);

var
l:real;
begin
l:=strtofloat(hasil.Text);
hasil.Text:=floattostr(sqrt(l));
end;

procedure TForm1.persenClick(Sender: TObject);

begin
a:=strtofloat(hasil.Text);
hasil.Text:=floattostr(a/100);
end;

procedure TForm1.perClick(Sender: TObject);

var
g          : real;
begin
g:=strtofloat(hasil.Text);
if g<>0 then
hasil.Text:=floattostr(1/g)
else
showmessage('Nan Error');
end;

procedure TForm1.samadenganClick(Sender: TObject);

var
angka   :real;
i,jo       :integer;
begin
pijit                  := 0;
angka               := 1;
indikator          := 1;
b:=strtofloat(hasil.Text);
jo:=strtoint(hasil.Text);
if c='+' then
hasil.Text:=floattostr(a+b)
else if c='-' then
hasil.Text:=floattostr(a-b)
else if c='*' then
hasil.Text:=floattostr(a*b)
else if c='/' then
begin
b:=strtofloat(hasil.Text);
if b<>0 then
hasil.Text:=floattostr(a/b)
else
showmessage('Nan Eror');
end;
end;

procedure TForm1.narutoClick(Sender: TObject);

begin
            p := '0';
hasil.Text := p;
end;

procedure TForm1.deletClick(Sender: TObject);
var
i           : integer;
t,k        : string;
begin
k := hasil.Text;
t := '';
for i := 1  to length (k)-1  do
t := t + k [i];
hasil.Text := t;
end;

procedure TForm1.BceClick(Sender: TObject);

begin
hasil.Text:='0';
end;

procedure TForm1.FormCreate(Sender: TObject);

begin
indikator := 0;
end;

procedure TForm1.Button1Click(Sender: TObject);

begin
if indikator = 1 then
                        begin
                                    p := '00';
                                    indikator := 0;
                        end
else
if hasil.Text = '0' then
p := '0'
else
                                    p := p + '00';
hasil.Text := p;
end;

procedure TForm1.metuClick(Sender: TObject);

begin
close;
  end;
end.

pingin tau hasilnya???

Tidak ada komentar:

Posting Komentar