Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- unit Unit1;
- interface
- uses
- Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
- MAth,
- Dialogs, StdCtrls;
- type
- TForm1 = class(TForm)
- Edit1: TEdit;
- Button1: TButton;
- Button2: TButton;
- Button3: TButton;
- Button4: TButton;
- Button5: TButton;
- Button6: TButton;
- Button7: TButton;
- Button8: TButton;
- Button9: TButton;
- Button10: TButton;
- Button11: TButton;
- Button12: TButton;
- Button13: TButton;
- Button14: TButton;
- Button15: TButton;
- Button16: TButton;
- Button17: TButton;
- Button18: TButton;
- Button19: TButton;
- Button20: TButton;
- Button21: TButton;
- Button22: TButton;
- Button23: TButton;
- Button24: TButton;
- Button25: TButton;
- Button26: TButton;
- Button27: TButton;
- Button28: TButton;
- procedure Button3Click(Sender: TObject);
- procedure Button9Click(Sender: TObject);
- procedure Button1Click(Sender: TObject);
- procedure Button2Click(Sender: TObject);
- procedure Button4Click(Sender: TObject);
- procedure Button5Click(Sender: TObject);
- procedure Button6Click(Sender: TObject);
- procedure Button7Click(Sender: TObject);
- procedure Button8Click(Sender: TObject);
- procedure Button10Click(Sender: TObject);
- procedure Button11Click(Sender: TObject);
- procedure Button12Click(Sender: TObject);
- procedure Button13Click(Sender: TObject);
- procedure Button14Click(Sender: TObject);
- procedure Button15Click(Sender: TObject);
- procedure Button16Click(Sender: TObject);
- procedure Button17Click(Sender: TObject);
- procedure Button18Click(Sender: TObject);
- procedure Button19Click(Sender: TObject);
- procedure Button20Click(Sender: TObject);
- procedure Button21Click(Sender: TObject);
- procedure Button22Click(Sender: TObject);
- procedure Button23Click(Sender: TObject);
- procedure Button24Click(Sender: TObject);
- procedure Button26Click(Sender: TObject);
- procedure Button25Click(Sender: TObject);
- procedure Button27Click(Sender: TObject);
- procedure Button28Click(Sender: TObject);
- procedure Button29Click(Sender: TObject);
- private
- { Private declarations }
- public
- { Public declarations }
- end;
- var
- Form1: TForm1;
- sum, y: real;
- c1: char;
- implementation
- {$R *.dfm}
- procedure TForm1.Button10Click(Sender: TObject);
- begin
- Edit1.text := Edit1.text + '-';
- end;
- procedure TForm1.Button11Click(Sender: TObject);
- begin
- Edit1.text := Edit1.text + '+';
- end;
- procedure TForm1.Button1Click(Sender: TObject);
- begin
- Edit1.text := Edit1.text + '1';
- end;
- procedure TForm1.Button20Click(Sender: TObject);
- begin
- Edit1.text := Edit1.text + 'ctg';
- end;
- procedure TForm1.Button21Click(Sender: TObject);
- begin
- Edit1.text := Edit1.text + 'arcsin';
- end;
- procedure TForm1.Button22Click(Sender: TObject);
- begin
- Edit1.text := Edit1.text + 'arccos';
- end;
- procedure TForm1.Button23Click(Sender: TObject);
- begin
- Edit1.text := Edit1.text + 'arctan';
- end;
- procedure TForm1.Button24Click(Sender: TObject);
- begin
- Edit1.text := Edit1.text + 'arcctg';
- end;
- procedure TForm1.Button25Click(Sender: TObject);
- begin
- Edit1.text := Edit1.text + 'sqrt';
- end;
- procedure TForm1.Button26Click(Sender: TObject);
- begin
- Edit1.text := Edit1.text + 'sqr';
- end;
- procedure TForm1.Button27Click(Sender: TObject);
- begin
- Edit1.text := Edit1.text + 'exp';
- end;
- procedure TForm1.Button28Click(Sender: TObject);
- begin
- Edit1.text := Edit1.text + 'ln';
- end;
- procedure TForm1.Button29Click(Sender: TObject);
- begin
- Edit1.text := Edit1.text + 'abs';
- end;
- procedure TForm1.Button2Click(Sender: TObject);
- begin
- Edit1.text := Edit1.text + '2';
- end;
- procedure TForm1.Button3Click(Sender: TObject);
- begin
- Edit1.text := Edit1.text + '3';
- end;
- procedure TForm1.Button4Click(Sender: TObject);
- begin
- Edit1.text := Edit1.text + '4';
- end;
- procedure TForm1.Button5Click(Sender: TObject);
- begin
- Edit1.text := Edit1.text + '5';
- end;
- procedure TForm1.Button6Click(Sender: TObject);
- begin
- Edit1.text := Edit1.text + '6';
- end;
- procedure TForm1.Button7Click(Sender: TObject);
- begin
- Edit1.text := Edit1.text + '7';
- end;
- procedure TForm1.Button8Click(Sender: TObject);
- begin
- Edit1.text := Edit1.text + '8';
- end;
- procedure TForm1.Button9Click(Sender: TObject);
- begin
- Edit1.text := Edit1.text + '9';
- end;
- procedure TForm1.Button12Click(Sender: TObject);
- var
- s, s1, sf: string;
- c: char;
- x: real;
- i, k: integer;
- begin
- s := Edit1.text;
- k := 0;
- for i := 1 to Length(s) do
- begin
- c := s[i];
- case c of
- '0' .. '9':
- s1 := s1 + c;
- 'a' .. 'z':
- sf := sf + c;
- '+':
- begin
- y := strtofloat(s1);
- if k > 0 then
- begin
- case c1 of
- '1':
- begin
- sum := sum + y;
- end;
- '2':
- begin
- sum := sum - y;
- end;
- '3':
- begin
- sum := sum * y;
- end;
- '4':
- begin
- sum := sum / y;
- end;
- end;
- end
- else
- begin
- sum := y;
- k := 1;
- end;
- s1 := ' ';
- k := 1;
- c1 := '1';
- end;
- '-':
- begin
- y := strtofloat(s1);
- if k > 0 then
- begin
- case c1 of
- '1':
- begin
- sum := sum + y;
- end;
- '2':
- begin
- sum := sum - y;
- end;
- '3':
- begin
- sum := sum * y;
- end;
- '4':
- begin
- sum := sum / y;
- end;
- end;
- end
- else
- begin
- sum := y;
- k := 1;
- end;
- s1 := ' ';
- c1 := '2';
- end;
- '*':
- begin
- y := strtofloat(s1);
- if k <> 0 then
- begin
- case c1 of
- '1':
- begin
- sum := sum + y;
- end;
- '2':
- begin
- sum := sum - y;
- end;
- '3':
- begin
- sum := sum * y;
- end;
- '4':
- begin
- sum := sum / y;
- end;
- end;
- end
- else
- begin
- sum := y;
- k := 1;
- end;
- s1 := ' ';
- c1 := '3';
- end;
- '/':
- begin
- y := strtofloat(s1);
- if k <> 0 then
- begin
- case c1 of
- '1':
- begin
- sum := sum + y;
- end;
- '2':
- begin
- sum := sum - y;
- end;
- '3':
- begin
- sum := sum * y;
- end;
- '4':
- begin
- sum := sum / y;
- end;
- end;
- end
- else
- begin
- sum := y;
- k := 1;
- end;
- s1 := ' ';
- c1 := '4';
- end;
- end;
- end;
- y := strtofloat(s1);
- case c1 of
- '1':
- begin
- sum := sum + y;
- end;
- '2':
- begin
- sum := sum - y;
- end;
- '3':
- begin
- sum := sum * y;
- end;
- '4':
- begin
- sum := sum / y;
- end;
- end;
- if sf = 'sin' then
- begin
- y := strtofloat(s1);
- x := degtorad(y);
- sum := sin(x);
- sf := ' ';
- s1 := ' ';
- end;
- if sf = 'cos' then
- begin
- y := strtofloat(s1);
- x := degtorad(y);
- sum := cos(x);
- sf := ' ';
- s1 := ' ';
- end;
- if sf = 'tan' then
- begin
- y := strtofloat(s1);
- x := degtorad(y);
- sum := sin(x) / cos(x);
- sf := ' ';
- s1 := ' ';
- end;
- if sf = 'ctg' then
- begin
- y := strtofloat(s1);
- x := degtorad(y);
- sum := cos(x) / sin(x);
- sf := ' ';
- s1 := ' ';
- end;
- if sf = 'arcsin' then
- begin
- y := strtofloat(s1);
- x := degtorad(y);
- sum := Arctan(x / Sqrt(1 - sqr(x)));;
- sf := ' ';
- s1 := ' ';
- end;
- if sf = 'arccos' then
- begin
- y := strtofloat(s1);
- x := degtorad(y);
- sum := Arctan(Sqrt(1 - sqr(x)) / x);
- sf := ' ';
- s1 := ' ';
- end;
- if sf = 'arctan' then
- begin
- y := strtofloat(s1);
- x := degtorad(y);
- sum := Arctan(x);
- sf := ' ';
- s1 := ' ';
- end;
- if sf = 'arcctg' then
- begin
- y := strtofloat(s1);
- x := degtorad(y);
- sum := 1 / Arctan(x);
- sf := ' ';
- s1 := ' ';
- end;
- if sf = 'sqr' then
- begin
- y := strtofloat(s1);
- sum := y * y;
- sf := ' ';
- s1 := ' ';
- end;
- if sf = 'sqrt' then
- begin
- y := strtofloat(s1);
- sum := Sqrt(y);
- sf := ' ';
- s1 := ' ';
- end;
- if sf = 'ln' then
- begin
- y := strtofloat(s1);
- sum := ln(y);
- sf := ' ';
- s1 := ' ';
- end;
- if sf = 'exp' then
- begin
- y := strtofloat(s1);
- sum := exp(y);
- sf := ' ';
- s1 := ' ';
- end;
- Edit1.text := Edit1.text + '=' + floattostr(sum);
- end;
- procedure TForm1.Button13Click(Sender: TObject);
- begin
- Edit1.text := ' ';
- end;
- procedure TForm1.Button14Click(Sender: TObject);
- begin
- Edit1.text := Edit1.text + '*';
- end;
- procedure TForm1.Button15Click(Sender: TObject);
- begin
- Edit1.text := Edit1.text + '/';
- end;
- procedure TForm1.Button16Click(Sender: TObject);
- begin
- Edit1.text := Edit1.text + '0';
- end;
- procedure TForm1.Button17Click(Sender: TObject);
- begin
- Edit1.text := Edit1.text + 'sin';
- end;
- procedure TForm1.Button18Click(Sender: TObject);
- begin
- Edit1.text := Edit1.text + 'cos';
- end;
- procedure TForm1.Button19Click(Sender: TObject);
- begin
- Edit1.text := Edit1.text + 'tan';
- end;
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement