unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls, Menus, Buttons, XPMan, Math;
type
TForm1 = class(TForm)
Edit1: TEdit;
...
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
x,y,z,MS,Mp,Mm:real;
p,k,l,d,i,j,t,h:integer;
a,b: real;
str: string;
c: char;
implementation
uses
Unit2,Unit3,Unit4;
{$R *.dfm}
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char); //wasd
begin
If (key in['-']) then edit1.text:='';
if not (key in['0'..'9','-',',',#8]) then key:=#0;
end;
procedure TForm1.Edit1Change(Sender: TObject); // ,,
var
h,i,n: integer;
str: string;
begin
str:='';
for h:=1 to Length(Edit1.Text) do
case Edit1.Text[h] of
'0'..'9', '-', ',', 'E', 'e' ,#8: str:= str + Edit1.Text[h];
end; { case }
Edit1.Text:= str;
Edit1.SelStart:= Length(Edit1.Text);
n:=pos(',',edit1.text);
for i:=n+1 to length(edit1.text) do
if edit1.text[i]=',' then edit1.clear;
n:=pos('-',edit1.text);
for i:=n+1 to length(edit1.text) do
if edit1.text[i]='-' then edit1.clear;
end;
procedure TForm1.N2Click(Sender: TObject); //ìì âûõîä
begin
close;
end;
procedure TForm1.Copy1Click(Sender: TObject);//pì êîïèðîâàòü
begin
edit1.CopyToClipboard;
end;
procedure TForm1.Paste1Click(Sender: TObject); //pm âñòàâèòü
begin
edit1.PasteFromClipboard;
end;
procedure TForm1.RadioButton2Click(Sender: TObject); // èíæåíåðíûé
begin
if RadioButton2.Checked then edit1.Width:=329;
Form1.Height:=299;
Form1.Width:=398;
end;
procedure TForm1.FormCreate(Sender: TObject); // ôèêñàöèÿ ôîðìû
begin
Form1.Height:=297;
Form1.Width:=204;
ms:=0;
x:=0;
z:=0;
y:=0;
k:=0;
p:=0;
d:=0;
Mp:=0;
Mm:=0;
end;
procedure TForm1.RadioButton1Click(Sender: TObject); //îáû÷íûé
begin
if RadioButton1.Checked then edit1.Width:=185;
Form1.Height:=297;
Form1.Width:=204;
end;
procedure TForm1.N5Click(Sender: TObject); //mm copy
begin
edit1.CopyToClipboard;
end;
procedure TForm1.N6Click(Sender: TObject); //mm paste
begin
edit1.PasteFromClipboard;
end;
procedure TForm1.N1Click(Sender: TObject);// îòêðûòèå ôîðìû 2
begin
form2.Show;
end;
procedure TForm1.BitBtn20Click(Sender: TObject);
begin
edit1.Text:=edit1.Text+'0';
end;
procedure TForm1.BitBtn8Click(Sender: TObject);
begin
edit1.Text:=edit1.Text+'1';
end;
procedure TForm1.BitBtn21Click(Sender: TObject);
begin
edit1.Text:=edit1.Text+'2';
end;
procedure TForm1.BitBtn7Click(Sender: TObject);
begin
edit1.Text:=edit1.Text+'3';
end;
procedure TForm1.BitBtn6Click(Sender: TObject);
begin
edit1.Text:=edit1.Text+'4';
end;
procedure TForm1.BitBtn10Click(Sender: TObject);
begin
edit1.Text:=edit1.Text+'5';
end;
procedure TForm1.BitBtn12Click(Sender: TObject);
begin
edit1.Text:=edit1.Text+'6';
end;
procedure TForm1.BitBtn16Click(Sender: TObject);
begin
edit1.Text:=edit1.Text+'7';
end;
procedure TForm1.BitBtn15Click(Sender: TObject);
begin
edit1.Text:=edit1.Text+'8';
end;
procedure TForm1.BitBtn14Click(Sender: TObject);
begin
edit1.Text:=edit1.Text+'9';
end;
procedure TForm1.BitBtn19Click(Sender: TObject);
begin
edit1.Text:=edit1.Text+',';
end;
procedure TForm1.BitBtn4Click(Sender: TObject);
var s: string;
begin
s:=edit1.Text;
delete(s, length (s),1);
edit1.Text:=s;
memo1.Text:='';
end;
procedure TForm1.BitBtn5Click(Sender: TObject);
begin
edit1.Text:='';
memo1.Text:='';
end;
procedure TForm1.BitBtn1Click(Sender: TObject);
var k:double;
begin
memo1.Text:=edit1.Text;
If TryStrToFloat(edit1.text,k) then edit1.text:=FloatTostr(-k);//'+/-'
end;
procedure TForm1.BitBtn3Click(Sender: TObject);
begin
if edit1.Text<>'' then a:=strtofloat(edit1.Text);
c:='+';
edit1.Clear;
end;
procedure TForm1.BitBtn11Click(Sender: TObject);
begin
if edit1.Text<>'' then a:=strtofloat(edit1.Text);
c:='-';
edit1.Clear;
end;
procedure TForm1.BitBtn13Click(Sender: TObject);
begin
if edit1.Text<>'' then a:=strtofloat(edit1.Text);
c:='*';
edit1.Clear;
end;
procedure TForm1.BitBtn17Click(Sender: TObject);
begin
if edit1.Text<>'' then a:=strtofloat(edit1.Text);
c:='/';
edit1.Clear;
end;
procedure TForm1.BitBtn18Click(Sender: TObject);
begin
memo1.Text:=edit1.Text;
if edit1.Text<>'' then b:=strtofloat (edit1.Text);
case c of
'x':edit1.Text:=floattostr(power(a,b));
'+':edit1.Text:=floattostr(a+b);
'-':edit1.Text:=floattostr(a-b);
'*':edit1.Text:=floattostr(a*b);
'/':begin
if b<>0 then
edit1.Text:=floattostr(a/b) else
form3.Show;
end;
end;
end;
procedure TForm1.BitBtn2Click(Sender: TObject);
begin
memo1.Text:=edit1.Text;
edit1.Text:=floattostr(pi);
end;
procedure TForm1.BitBtn9Click(Sender: TObject);
var e: real;
begin
memo1.Text:=edit1.Text;
e:=2.718281828459;
edit1.Text:=floattostr(e);
end;
procedure TForm1.BitBtn25Click(Sender: TObject);
begin
memo1.Text:=edit1.Text;
if Edit1.Text = '' then exit;
t:=strtoint(edit1.Text);
y:=1;
for i:=1 to t do
y:=y*i;
edit1.Text:=floattostr(y);
end;
procedure TForm1.BitBtn33Click(Sender: TObject);
begin
if Edit1.Text = '' then exit;
ms:=strtofloat(edit1.Text);
panel1.Caption:='M';
end;
procedure TForm1.BitBtn27Click(Sender: TObject);
begin
memo1.Text:=edit1.Text;
if Edit1.Text = '' then exit;
x:=strtofloat(Edit1.Text);
y:=sqr(x);
edit1.Text:=floattostr(y);
end;
procedure TForm1.BitBtn28Click(Sender: TObject);
begin
memo1.Text:=edit1.Text;
if Edit1.Text = '' then exit;
x:=strtofloat(edit1.Text);
y:=sqr(x)*x;
edit1.Text:=floattostr(y);
end;
procedure TForm1.BitBtn34Click(Sender: TObject);
begin
memo1.Text:=edit1.Text;
if edit1.Text<>'' then a:=strtofloat(edit1.Text);
c:='x';
edit1.Clear;
end;
procedure TForm1.BitBtn29Click(Sender: TObject);
begin
MS:=0;
panel1.Caption:='';
end;
procedure TForm1.BitBtn32Click(Sender: TObject);
begin
edit1.Text:=floattostr(MS);
end;
procedure TForm1.BitBtn31Click(Sender: TObject);
begin
if Edit1.Text = '' then exit;
panel1.Caption:='M';
MS:=MS+strtofloat(edit1.Text);
end;
procedure TForm1.BitBtn30Click(Sender: TObject);
begin
if Edit1.Text = '' then exit;
panel1.Caption:='M';
MS:=MS-strtofloat(edit1.Text);
end;
procedure TForm1.BitBtn24Click(Sender: TObject);
begin
memo1.Text:=edit1.Text;
if Edit1.Text = '' then exit;
x:=strtofloat(edit1.Text);
y:=sin(x);
edit1.Text:=floattostr(y);
end;
procedure TForm1.BitBtn22Click(Sender: TObject);
begin
memo1.Text:=edit1.Text;
if Edit1.Text = '' then exit;
if Edit1.Text = '0' then exit;
x:=strtofloat(edit1.Text);
y:=1/x;
edit1.Text:=floattostr(y);
end;
procedure TForm1.BitBtn23Click(Sender: TObject);
begin
memo1.Text:=edit1.Text;
if Edit1.Text = '' then exit;
x:=strtofloat(edit1.Text);
y:=sin(x)/cos(x);
edit1.Text:=floattostr(y);
end;
procedure TForm1.BitBtn26Click(Sender: TObject);
begin
memo1.Text:=edit1.Text;
if Edit1.Text = '' then exit;
x:=strtofloat(edit1.Text);
y:=cos(x);
edit1.Text:=floattostr(y);
end;
procedure TForm1.BitBtn35Click(Sender: TObject);
begin
memo1.Text:=edit1.Text;
if edit1.Text<>'' then b:=strtofloat (edit1.Text);
case c of
'+':edit1.Text:=floattostr(a*(1+b/100));
'-':edit1.Text:=floattostr(a*(1-b/100));
'*':edit1.Text:=floattostr(a*b/100);
end;
end;
procedure TForm1.BitBtn36Click(Sender: TObject);
begin
memo1.Text:=edit1.Text;
if Edit1.Text = '' then exit;
x:=strtofloat(edit1.Text);
y:=cosh(x);
edit1.Text:=floattostr(y);
end;
procedure TForm1.BitBtn37Click(Sender: TObject);
begin
memo1.Text:=edit1.Text;
if Edit1.Text = '' then exit;
x:=strtofloat(edit1.Text);
y:=sinh(x);
edit1.Text:=floattostr(y);
end;
procedure TForm1.BitBtn38Click(Sender: TObject);
begin
memo1.Text:=edit1.Text;
if Edit1.Text = '' then exit;
x:=strtofloat(edit1.Text);
y:=sinh(x)/cosh(x);
edit1.Text:=floattostr(y);
end;
end.