📄 unit1.pas
字号:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;
type
TForm1 = class(TForm)
Panel2: TPanel;
Button4: TButton;
Buttonb: TButton;
Button6: TButton;
Button5: TButton;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Buttonc: TButton;
Buttond: TButton;
Buttonr: TButton;
Buttonp: TButton;
Button0: TButton;
Button7: TButton;
Buttona: TButton;
Button9: TButton;
Button8: TButton;
screen: TEdit;
Button10: TButton;
Button11: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Button7Click(Sender: TObject);
procedure Button8Click(Sender: TObject);
procedure Button9Click(Sender: TObject);
procedure Button0Click(Sender: TObject);
procedure ButtonpClick(Sender: TObject);
procedure ButtondClick(Sender: TObject);
procedure ButtonrClick(Sender: TObject);
procedure ButtonbClick(Sender: TObject);
procedure ButtonaClick(Sender: TObject);
procedure Button10Click(Sender: TObject);
procedure Button11Click(Sender: TObject);
procedure ButtoncClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
var
x,y,result :Real;
sc:String;
operate:char;
flag:bool;
procedure TForm1.FormCreate(Sender: TObject);
begin
x:=0;
y:=0;
result:=0;
sc:='';
flag:=true;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
sc:=sc+'1';
screen.Text:=sc;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
sc:=sc+'2';
screen.Text:=sc;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
sc:=sc+'3';
screen.Text:=sc;
end;
procedure TForm1.Button4Click(Sender: TObject);
begin
sc:=sc+'4';
screen.Text:=sc;
end;
procedure TForm1.Button5Click(Sender: TObject);
begin
sc:=sc+'5';
screen.Text:=sc;
end;
procedure TForm1.Button6Click(Sender: TObject);
begin
sc:=sc+'6';
screen.Text:=sc;
end;
procedure TForm1.Button7Click(Sender: TObject);
begin
sc:=sc+'7';
screen.Text:=sc;
end;
procedure TForm1.Button8Click(Sender: TObject);
begin
sc:=sc+'8';
screen.Text:=sc;
end;
procedure TForm1.Button9Click(Sender: TObject);
begin
sc:=sc+'9';
screen.Text:=sc;
end;
procedure TForm1.Button0Click(Sender: TObject);
begin
sc:=sc+'0';
screen.Text:=sc;
end;
procedure TForm1.ButtonpClick(Sender: TObject);
begin
sc:=sc+'.';
screen.Text:=sc;
end;
procedure TForm1.ButtondClick(Sender: TObject);
begin
if flag=true then
begin
x:=strtofloat(screen.text);
result:=x;
screen.text:='';
operate:='-';
flag:=false;
sc:='';
end
else
begin
y:=strtofloat(screen.text);
case operate of
'+': result:=result+y;
'-': result:=result-y;
'*': result:=result*y;
'/': result:=result/y;
end;
screen.Text:=floattostr(result);
operate:='-';
flag:=false;
sc:='';
end
end;
procedure TForm1.ButtoncClick(Sender: TObject);
begin
if flag=true then
begin
x:=strtofloat(screen.text);
result:=x;
screen.text:='';
operate:='+';
flag:=false;
sc:='';
end
else
begin
y:=strtofloat(screen.text);
case operate of
'+': result:=result+y;
'-': result:=result-y;
'*': result:=result*y;
'/': result:=result/y;
end;
screen.Text:=floattostr(result);
operate:='+';
flag:=false;
sc:='';
end
end;
procedure TForm1.ButtonbClick(Sender: TObject);
begin
if flag=true then
begin
x:=strtofloat(screen.text);
result:=x;
screen.text:='';
operate:='/';
flag:=false;
sc:='';
end
else
begin
y:=strtofloat(screen.text);
case operate of
'+': result:=result+y;
'-': result:=result-y;
'*': result:=result*y;
'/': result:=result/y;
end;
screen.Text:=floattostr(result);
operate:='/';
flag:=false;
sc:='';
end
end;
procedure TForm1.ButtonaClick(Sender: TObject);
begin
if flag=true then
begin
x:=strtofloat(screen.text);
result:=x;
screen.text:='';
operate:='*';
flag:=false;
sc:='';
end
else
begin
y:=strtofloat(screen.text);
case operate of
'+': result:=result+y;
'-': result:=result-y;
'*': result:=result*y;
'/': result:=result/y;
end;
screen.Text:=floattostr(result);
operate:='*';
flag:=false;
sc:='';
end
end;
procedure TForm1.ButtonrClick(Sender: TObject);
begin
case operate of
'+' :
begin
y:=strtofloat(screen.text);
result:=result+y;
sc:=floattostr(result);
screen.text:=(sc);
flag:=true;
sc:='';
end ;
'-' :
begin
y:=strtofloat(screen.text);
result:=result-y;
sc:=floattostr(result);
screen.text:=(sc);
flag:=true;
sc:='';
end;
'/' :
begin
y:=strtofloat(screen.text);
if y=0 then
screen.text:='error of the divesor is 0'
else
begin
result:=result/y;
sc:=floattostr(result);
screen.text:=(sc);
flag:=true;
sc:='';
end
end;
'*' :
begin
y:=strtofloat(screen.text);
result:=result*y;
sc:=floattostr(result);
screen.text:=(sc);
flag:=true;
sc:='';
end
else
sc:=floattostr(result);
screen.text:=(sc)
end;
end;
procedure TForm1.Button10Click(Sender: TObject);
begin
screen.text:='';
sc:='';
end;
procedure TForm1.Button11Click(Sender: TObject);
begin
x:=0;
y:=0;
result:=0;
screen.text:='';
sc:='';
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -