ALpMontana
КЯaL´da TaNıMaM КuяaL´da
Çok fonksiyonlu hesap makinesi
programı hazır zipleyip wermedım bu şekiLde istediğiniz alnı geliştirip daraltırsınız.
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls, Buttons, XPMan, math, ExtCtrls, Menus;
type
TForm1 = class(TForm)
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
BitBtn3: TBitBtn;
BitBtn4: TBitBtn;
BitBtn5: TBitBtn;
BitBtn6: TBitBtn;
BitBtn7: TBitBtn;
BitBtn8: TBitBtn;
BitBtn9: TBitBtn;
BitBtn10: TBitBtn;
BitBtn11: TBitBtn;
BitBtn12: TBitBtn;
BitBtn13: TBitBtn;
arti: TBitBtn;
BitBtn15: TBitBtn;
bolu: TBitBtn;
carpi: TBitBtn;
eksi: TBitBtn;
BitBtn19: TBitBtn;
c: TBitBtn;
BitBtn21: TBitBtn;
BitBtn22: TBitBtn;
BitBtn23: TBitBtn;
BitBtn24: TBitBtn;
BitBtn25: TBitBtn;
BitBtn26: TBitBtn;
BitBtn27: TBitBtn;
BitBtn28: TBitBtn;
BitBtn29: TBitBtn;
BitBtn30: TBitBtn;
BitBtn31: TBitBtn;
BitBtn32: TBitBtn;
BitBtn33: TBitBtn;
BitBtn35: TBitBtn;
BitBtn36: TBitBtn;
BitBtn37: TBitBtn;
BitBtn38: TBitBtn;
BitBtn39: TBitBtn;
BitBtn40: TBitBtn;
XPManifest1: TXPManifest;
BitBtn41: TBitBtn;
BitBtn42: TBitBtn;
BitBtn43: TBitBtn;
BitBtn44: TBitBtn;
BitBtn47: TBitBtn;
BitBtn48: TBitBtn;
BitBtn49: TBitBtn;
BitBtn50: TBitBtn;
BitBtn51: TBitBtn;
BitBtn60: TBitBtn;
Panel1: TPanel;
edit1: TLabel;
Timer1: TTimer;
StatusBar1: TStatusBar;
MainMenu1: TMainMenu;
Dosya1: TMenuItem;
Grnm1: TMenuItem;
Standart1: TMenuItem;
Bilimsel1: TMenuItem;
BitBtn14: TBitBtn;
BitBtn16: TBitBtn;
BitBtn17: TBitBtn;
BitBtn18: TBitBtn;
BitBtn20: TBitBtn;
BitBtn61: TBitBtn;
BitBtn62: TBitBtn;
BitBtn63: TBitBtn;
Yardm1: TMenuItem;
Hakkmda1: TMenuItem;
Kapat1: TMenuItem;
BitBtn64: TBitBtn;
Timer2: TTimer;
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure BitBtn4Click(Sender: TObject);
procedure BitBtn5Click(Sender: TObject);
procedure BitBtn6Click(Sender: TObject);
procedure BitBtn7Click(Sender: TObject);
procedure BitBtn8Click(Sender: TObject);
procedure BitBtn9Click(Sender: TObject);
procedure BitBtn10Click(Sender: TObject);
procedure BitBtn11Click(Sender: TObject);
procedure artiClick(Sender: TObject);
procedure eksiClick(Sender: TObject);
procedure carpiClick(Sender: TObject);
procedure boluClick(Sender: TObject);
procedure BitBtn19Click(Sender: TObject);
procedure BitBtn13Click(Sender: TObject);
procedure cClick(Sender: TObject);
procedure BitBtn41Click(Sender: TObject);
procedure BitBtn43Click(Sender: TObject);
procedure BitBtn44Click(Sender: TObject);
procedure BitBtn47Click(Sender: TObject);
procedure BitBtn28Click(Sender: TObject);
procedure BitBtn39Click(Sender: TObject);
procedure BitBtn38Click(Sender: TObject);
procedure BitBtn40Click(Sender: TObject);
procedure BitBtn48Click(Sender: TObject);
procedure BitBtn49Click(Sender: TObject);
procedure BitBtn50Click(Sender: TObject);
procedure BitBtn51Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Timer1Timer(Sender: TObject);
procedure BitBtn33Click(Sender: TObject);
procedure BitBtn21Click(Sender: TObject);
procedure BitBtn35Click(Sender: TObject);
procedure BitBtn36Click(Sender: TObject);
procedure BitBtn37Click(Sender: TObject);
procedure BitBtn12Click(Sender: TObject);
procedure BitBtn22Click(Sender: TObject);
procedure BitBtn31Click(Sender: TObject);
procedure BitBtn30Click(Sender: TObject);
procedure BitBtn14Click(Sender: TObject);
procedure BitBtn26Click(Sender: TObject);
procedure BitBtn29Click(Sender: TObject);
procedure BitBtn17Click(Sender: TObject);
procedure BitBtn18Click(Sender: TObject);
procedure BitBtn20Click(Sender: TObject);
procedure BitBtn61Click(Sender: TObject);
procedure BitBtn62Click(Sender: TObject);
procedure BitBtn63Click(Sender: TObject);
procedure BitBtn16Click(Sender: TObject);
procedure Hakkmda1Click(Sender: TObject);
procedure Kapat1Click(Sender: TObject);
procedure BitBtn64Click(Sender: TObject);
procedure Timer2Timer(Sender: TObject);
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
procedure Standart1Click(Sender: TObject);
procedure Bilimsel1Click(Sender: TObject);
procedure BitBtn15Click(Sender: TObject);
procedure BitBtn32Click(Sender: TObject);
procedure BitBtn42Click(Sender: TObject);
procedure BitBtn60Click(Sender: TObject);
procedure BitBtn23Click(Sender: TObject);
procedure BitBtn24Click(Sender: TObject);
procedure BitBtn25Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
sayi1:integer;
islem:integer;
sayi2:integer;
sonuc1:integer;
sonuc:real;
z,c,d,w:integer;
deger : real;
derece: string[10];
islem5: string[10];
degersifirla : string[5];
sayisistemi : string[3];
tutup: Boolean;
a,t,i: Integer;
Islem2: integer;
f:char;
gecicisayi,
gecicisayi2,
Hafiza,
ilksayi,
GeciciSayi3,
IkinciSayi,
yrdsayi,
IslemSonucu : real;
Sonuc15 : string[20];
say1,say2,say3,sayac,olcu,ilk,ikinci,ison:integer;
s:string;
implementation
{$R *.dfm}
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
edit1.caption:=edit1.caption+'1';
end;
procedure TForm1.BitBtn2Click(Sender: TObject);
begin
edit1.caption:=edit1.caption+'2';
end;
procedure TForm1.BitBtn3Click(Sender: TObject);
begin
edit1.caption:=edit1.caption+'3';
end;
procedure TForm1.BitBtn4Click(Sender: TObject);
begin
edit1.caption:=edit1.caption+'4';
end;
procedure TForm1.BitBtn5Click(Sender: TObject);
begin
edit1.caption:=edit1.caption+'5';
end;
procedure TForm1.BitBtn6Click(Sender: TObject);
begin
edit1.caption:=edit1.caption+'6';
end;
procedure TForm1.BitBtn7Click(Sender: TObject);
begin
edit1.caption:=edit1.caption+'7';
end;
procedure TForm1.BitBtn8Click(Sender: TObject);
begin
edit1.caption:=edit1.caption+'8';
end;
procedure TForm1.BitBtn9Click(Sender: TObject);
begin
edit1.caption:=edit1.caption+'9';
end;
procedure TForm1.BitBtn10Click(Sender: TObject);
begin
edit1.caption:=edit1.caption+'0';
end;
procedure TForm1.BitBtn11Click(Sender: TObject);
begin
edit1.caption:=edit1.caption+'000';
end;
procedure TForm1.artiClick(Sender: TObject);
begin
sayi1:=strtoint(edit1.caption);
islem:=1;
edit1.caption:=";
arti.Enabled:=true;
end;
procedure TForm1.eksiClick(Sender: TObject);
begin
sayi1:=strtoint(edit1.caption);
islem:=2;
edit1.caption:=";
eksi.Enabled:=true;
end;
procedure TForm1.carpiClick(Sender: TObject);
begin
sayi1:=strtoint(edit1.caption);
islem:=3;
edit1.caption:=";
carpi.Enabled:=true;
end;
procedure TForm1.boluClick(Sender: TObject);
begin
sayi1:=strtoint(edit1.caption);
islem:=4;
edit1.caption:=";
bolu.Enabled:=true;
end;
procedure TForm1.BitBtn19Click(Sender: TObject);
begin
edit1.caption:=";
sayi1:=0;
sayi2:=0;
edit1.caption:=";
end;
procedure TForm1.BitBtn13Click(Sender: TObject);
begin
sayi2:=strtoint(edit1.caption);
if islem=1 then sonuc:=sayi1+sayi2;
if islem=2 then sonuc:=sayi1-sayi2;
if islem=3 then sonuc:=sayi1*sayi2;
if islem=4 then sonuc:=sayi1/sayi2;
if islem=5 then sonuc:=sayi1*sayi2/100;
edit1.caption:=floattostr(sonuc);
//if z=0 then begin showmessage('Sıfıra Bölme Hatası') end else
//if f='%' then begin edit1.caption:="; edit1.caption:=inttostr((c*z) div 100);end
end;
procedure TForm1.cClick(Sender: TObject);
begin
Sonuc15:=('0');
edit1.Caption:=Sonuc15;
end;
procedure TForm1.BitBtn41Click(Sender: TObject);
var
a:Real;
sonuc2:Real;
begin
a:=StrToFloat(edit1.caption);
sonuc2:=abs(a); //pozitife çevir
edit1.caption:=FloatToStr(sonuc2);
end;
procedure TForm1.BitBtn43Click(Sender: TObject);
var
sayi7:Real;
sonuc1:Integer;
begin
sayi7:=StrToFloat(edit1.caption);
sonuc1:=Floor(sayi7); //Bir alt tam sayıya indir.
edit1.caption:=IntToStr(sonuc1);
end;
procedure TForm1.BitBtn44Click(Sender: TObject);
var
sayi3:Real;
sonuc1:Integer;
begin
sayi3:=StrToFloat(edit1.caption);
sonuc1:=Trunc(sayi3); //sadece tam kısmını göster
edit1.caption:=IntToStr(sonuc1);// 125 yazar
end;
procedure TForm1.BitBtn47Click(Sender: TObject);
var
sayi9:Real;
sonuc2:Extended;
begin
sayi9:=StrToFloat(edit1.caption); //isterseniz bir kontrolden değer aktarabilirsiniz.
sonuc2:=Frac(sayi9); //ondalıklı kısmı al
edit1.caption:=FloatToStr(sonuc2);// 0.756 yazar
end;
procedure TForm1.BitBtn28Click(Sender: TObject);
var
sayi12:Real;
sonuc:Real;
begin
sayi12:=StrToFloat(edit1.caption);
sonuc:=Ln(sayi12);
edit1.caption:=FloatToStr(sonuc);
end;
procedure TForm1.BitBtn39Click(Sender: TObject);
var
sayi13:Real;
sonuc:Real;
begin
sayi13:=StrToFloat(edit1.caption);
sonuc:=Log10(sayi13);
edit1.caption:=FloatToStr(sonuc);
end;
procedure TForm1.BitBtn38Click(Sender: TObject);
var
sayi14:Real;
begin
sayi14:=StrToFloat(edit1.caption);
sonuc:=Log2(sayi14);
edit1.caption:=FloatToStr(sonuc);
end;
procedure TForm1.BitBtn40Click(Sender: TObject);
var
n: int64;
sonuc : real;
begin
n:=StrToInt(InputBox('LogN','N :','2'));
if n=0 then exit;
sonuc:=StrToFloat(edit1.caption);
sonuc:=LogN(n,sonuc);
edit1.caption:=FloatToStr(sonuc);
degersifirla :='evet';
end;
procedure TForm1.BitBtn48Click(Sender: TObject);
var
deger1:Extended;
sonuc2:Extended;
begin
deger1:=StrToFloat(edit1.caption);
sonuc2:=Round(deger1); //alta veya üste yuvarla
edit1.caption:=FloatToStr(sonuc2); //10yazar
end;
procedure TForm1.BitBtn49Click(Sender: TObject);
var
ilk
sonuc1:Integer;
begin
ilk:=StrToFloat(edit1.caption);
sonuc:=Sign(ilk);
if sonuc=1 then
ShowMessage('Sayı Pozitif')
else if sonuc=-1 then
ShowMessage('Sayı Negatif')
else if sonuc=0 then //sadece else de yeterliydi
ShowMessage('Sayı Sıfır');
end;
procedure TForm1.BitBtn50Click(Sender: TObject);
var
sayi17,sonuc
begin
sayi17:=StrToFloat(edit1.caption);
sonuc:=Sqr(sayi17); //karesini hesapla
edit1.caption:=FloatToStr(sonuc);
end;
procedure TForm1.BitBtn51Click(Sender: TObject);
var
sayi18,sonuc
begin
sayi18:=StrToFloat(edit1.caption);
sonuc:=Sqrt(sayi18); //karekökünü hesapla
edit1.caption:=FloatToStr(sonuc); //10 yazar
end;
procedure TForm1.FormCreate(Sender: TObject);
var
region: HRgn;
begin
form1.Height:=460;
form1.Width:=261;
region:=CreateRoundRectRgn(1, 1, 720, 560, 30, 30);
SetWindowRgn(handle, region, true);
animatewindow(handle,500,aw_ver_positive or aw_ver_negative or AW_BLEND);
begin
tutup := True;
timer2.Enabled := False;
end;
end;
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
ReleaseCapture;
Form1.perform(WM_SYSCOMMAND, $F012, 0);
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
statusbar1.Panels[0].Text:=' MEHMET ve HAKAN [ '+TimeToStr(time) +' ]';
end;
procedure TForm1.BitBtn33Click(Sender: TObject);
begin
sonuc1:=1;
for w:=1 to strtoint(edit1.caption) do begin
sonuc1:=sonuc1*w; end;
edit1.caption:=inttostr(sonuc1);
end;
procedure TForm1.BitBtn21Click(Sender: TObject);
begin
edit1.caption:='-'+edit1.caption;
end;
procedure TForm1.BitBtn35Click(Sender: TObject);
begin
z:=strtoint(edit1.caption);
edit1.caption:=";
edit1.caption:=floattostr(sin(pi*z/180));
end;
procedure TForm1.BitBtn36Click(Sender: TObject);
begin
z:=strtoint(edit1.caption);
edit1.caption:=";
edit1.caption:=floattostr(cos(pi*z/180));
end;
procedure TForm1.BitBtn37Click(Sender: TObject);
begin
z:=strtoint(edit1.caption);
edit1.caption:=";
edit1.caption:=floattostr((sin(pi*z/180))/(cos(pi*z/180)));
end;
procedure TForm1.BitBtn12Click(Sender: TObject);
begin
edit1.caption:=edit1.caption+',';
end;
procedure TForm1.BitBtn22Click(Sender: TObject);
var
i : string;
begin
i:=edit1.caption;
if length(i)=1 then
begin
edit1.caption:='0';
exit;
end;
Delete(i,length(i),1);
edit1.caption:=i;
end;
procedure TForm1.BitBtn31Click(Sender: TObject);
begin
z:=strtoint(edit1.caption);
edit1.caption:=";
edit1.caption:=inttostr(z*z*z);
end;
procedure TForm1.BitBtn30Click(Sender: TObject);
begin
sayi1:=strtoint(edit1.caption);
sonuc1:=sayi1*sayi1;
edit1.caption:=inttostr(sonuc1);
end;
procedure TForm1.BitBtn14Click(Sender: TObject);
begin
close;
end;
procedure TForm1.BitBtn26Click(Sender: TObject);
var
kontrol:integer;
hafiza,ikincisayi:real;
sonuc:string[9];
begin
if kontrol= 1 then begin
ikincisayi:=strtofloat(sonuc);
hafiza:=hafiza+ikincisayi;
end;
end;
procedure TForm1.BitBtn29Click(Sender: TObject);
var
y : extended;
i : real;
j : string;
begin
j:=InputBox('x^y','Y Değerini Giriniz','0');
i:=StrTofloat(j);
y:=StrToFloat(panel1.Caption);
y:=power(y,i);
panel1.Caption:=FloatToStr
degersifirla :='evet';
end;
procedure TForm1.BitBtn17Click(Sender: TObject);
begin
if degersifirla='evet' then
begin
edit1.caption:=";
degersifirla:='hayir';
end;
if edit1.caption='0' then
begin
edit1.caption:='A';
exit;
end;
edit1.caption:=edit1.caption+'A';
end;
procedure TForm1.BitBtn18Click(Sender: TObject);
begin
if degersifirla='evet' then
begin
edit1.caption:=";
degersifirla:='hayir';
end;
if edit1.caption='0' then
begin
edit1.caption:='B';
exit;
end;
edit1.caption:=edit1.caption+'B';
end;
procedure TForm1.BitBtn20Click(Sender: TObject);
begin
if degersifirla='evet' then
begin
edit1.caption:=";
degersifirla:='hayir';
end;
if edit1.caption='0' then
begin
panel1.Caption:='C';
exit;
end;
edit1.caption:=edit1.caption+'C';
end;
procedure TForm1.BitBtn61Click(Sender: TObject);
begin
if degersifirla='evet' then
begin
edit1.caption:=";
degersifirla:='hayir';
end;
if edit1.caption='0' then
begin
edit1.caption:='D';
exit;
end;
edit1.caption:=edit1.caption+'D';
end;
procedure TForm1.BitBtn62Click(Sender: TObject);
begin
if degersifirla='evet' then
begin
edit1.caption:=";
degersifirla:='hayir';
end;
if edit1.caption='0' then
begin
edit1.caption:='E';
exit;
end;
edit1.caption:=edit1.caption+'E';
end;
procedure TForm1.BitBtn63Click(Sender: TObject);
begin
if degersifirla='evet' then
begin
edit1.caption:=";
degersifirla:='hayir';
end;
if edit1.caption='0' then
begin
edit1.caption:='F';
exit;
end;
edit1.caption:=edit1.caption+'F';
end;
procedure TForm1.BitBtn16Click(Sender: TObject);
begin
ShowMessage('Bu Program MEHMET GÖLCÜK ve HAKAN tarafından Yapılmıştır!!!'+ #13 +'Mail : [email protected]');
end;
procedure TForm1.Hakkmda1Click(Sender: TObject);
begin
ShowMessage('Bu Program MEHMET GÖLCÜK ve HAKAN'+#13+
'Tarafından Hazırlanmıştır'+#13+
'Mail :Mİ[email protected]'+#13+
'(C)2007');
end;
procedure TForm1.Kapat1Click(Sender: TObject);
begin
close;
end;
procedure TForm1.BitBtn64Click(Sender: TObject);
var
FullProgPath: PChar;
begin
FullProgPath := PChar(Application.ExeName);
// ShowWindow(Form1.handle,SW_HIDE);
WinExec(FullProgPath, SW_SHOW);
Application.Terminate;
end;
procedure TForm1.Timer2Timer(Sender: TObject);
var
reg1, reg2: hrgn;
begin
if tutup = True then
begin
i := i + 10;
reg1 := CreateRoundRectRgn(0 + i, 0 + i, Width - i, Height - i, 20, 20);
SetWindowRgn(Handle, reg1, True);
end;
if i >= Width then
begin
tutup := False;
i := 1;
end;
if tutup = False then
begin
i := i + 10;
reg1 := CreateRectRgn(0, 0, (Width div 2) - i, Height);
reg2 := CreateRectRgn((Width div 2) + i, 0, Width, Height);
CombineRgn(reg1, reg1, reg2, rgn_or);
SetWindowRgn(Handle, reg1, True);
if i >= Width div 2 then
begin
tutup := True;
i := 1;
end;
end;
end;
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
var
reg1: hrgn;
begin
i := 75;
timer2.Enabled := True;
if MessageDlg('Çıkış ?',
mtConfirmation, [mbYes, mbNo], 0) = mrYes then
CanClose := True
else
begin
CanClose := False;
timer2.Enabled := False;
reg1 := CreateRoundRectRgn(0, 0, Width, Height, 0, 0);
SetWindowRgn(Handle, reg1, True);
end;
end;
procedure TForm1.Standart1Click(Sender: TObject);
begin
form1.Height:=460;
form1.Width:=261;
end;
procedure TForm1.Bilimsel1Click(Sender: TObject);
var
ani: Integer;
begin
form1.Height:=460;
form1.Width:=470;
ani := 237;
repeat ani := ani + 1;
Form1.Width := ani;
until ani >= 470;
end;
procedure TForm1.BitBtn15Click(Sender: TObject);
begin
f:='%';
z:=strtoint(edit1.caption);
edit1.caption:=";
bitbtn20.Enabled:=true;
end;
procedure TForm1.BitBtn32Click(Sender: TObject);
begin
z:=strtoint(edit1.caption);
edit1.caption:=";
edit1.caption:=floattostr(1/z);
end;
procedure TForm1.BitBtn42Click(Sender: TObject);
var
sayi12: Real;
Sonuc13 : Integer;
begin
Sayi12 :=StrToFloat(edit1.caption);
Sonuc13 :=Ceil(sayi12); // Editteki değeri bir üst tam sayıya yuvarla
edit1.caption:= IntToStr(sonuc13);
end;
procedure TForm1.BitBtn60Click(Sender: TObject);
begin
t:=strtointdef(edit1.caption,0);
edit1.caption:=";
for i:=0 to 15 do edit1.caption:=inttostr((t shr i) and 1)+ edit1.caption;
end;
procedure TForm1.BitBtn23Click(Sender: TObject);
begin
Hafiza:=0;
edit1.caption:='0';
end;
procedure TForm1.BitBtn24Click(Sender: TObject);
begin
Sonuc15:=floattostr(Hafiza);
edit1.Caption:=Sonuc15;
end;
procedure TForm1.BitBtn25Click(Sender: TObject);
begin
Hafiza:=strtofloat(Sonuc15);
end;
end.