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