📄 frist.~pas
字号:
unit frist;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Menus,text, ExtCtrls;
type
Ts1 = class(TForm)
cf: TButton;
add: TButton;
cut: TButton;
cu: TButton;
clear: TButton;
answer: TButton;
n1: TButton;
n2: TButton;
n3: TButton;
n6: TButton;
n9: TButton;
n5: TButton;
n4: TButton;
n8: TButton;
n7: TButton;
n0: TButton;
wei: TButton;
sqrt: TButton;
sqr: TButton;
jin: TButton;
num: TLabel;
MainMenu1: TMainMenu;
N10: TMenuItem;
N11: TMenuItem;
N12: TMenuItem;
N13: TMenuItem;
N14: TMenuItem;
N15: TMenuItem;
N16: TMenuItem;
N17: TMenuItem;
N18: TMenuItem;
N19: TMenuItem;
procedure AllClick(Sender: TObject);
procedure clearClick(Sender: TObject);
procedure answerClick(Sender: TObject);
procedure weiClick(Sender: TObject);
procedure sqrClick(Sender: TObject);
procedure holeClick(Sender: TObject);
procedure jinClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
zhen: integer=10;
tag : integer;
be:TButton;
s1: Ts1;
num1:real=0;
num2:real=0;
s:string;
lastnum:integer=0;
lastset:integer=0;
count:integer=0;
jing:real=10;
implementation
{$R *.dfm}
procedure Ts1.AllClick(Sender: TObject);
begin
tag := (sender as tbutton).tag;
if lastnum=0 then
begin
lastnum:=1;num2:=num1;num1:=0;s:='0';lastset:=tag;
end
else
begin
case lastset of
1:
begin num2:=num2+num1;num1:=0;s:=FloatToStr(num2);num.Caption:=s;
lastset:=tag;
end;
2:
begin num2:=num2-num1;num1:=0;s:=FloatToStr(num2);num.Caption:=s;
lastset:=tag;
end;
3:
begin num2:=num2*num1;num1:=0;s:=FloatToStr(num2);num.Caption:=s;
lastset:=tag;
end;
4: if num1=0 then showmessage('除数不能为0')
else begin num2:=num2/num1;num1:=0;s:=FloatToStr(num2);num.Caption:=s;
lastset:=tag;
end;
{5: begin num1:=0;num2:=0;num.Text:=n0.Caption;tag:=0;lastnum:=0;
lastset:=0;
end; }
{6: begin num1:=0;s:=FloatToStr(num2);num.Text:=s;lastnum:=0;
case lastset of
1:
begin num2:=num2+num1;num1:=0;s:=FloatToStr(num2);num.Text:=s;
lastset:=0;
end;
2:
begin num2:=num2-num1;num1:=0;s:=FloatToStr(num2);num.Text:=s;
lastset:=0;
end;
3:
begin num2:=num2*num1;num1:=0;s:=FloatToStr(num2);num.Text:=s;
lastset:=0;
end;
4:
begin num2:=num2/num1;num1:=0;s:=FloatToStr(num2);num.Text:=s;
lastset:=0;
end;
end;
end; }
end;
end;
end;
procedure Ts1.clearClick(Sender: TObject);
begin
num1:=0;num2:=0;num.Caption:=n0.Caption;
tag:=0;lastnum:=0;jing:=zhen;
lastset:=0;
end;
procedure Ts1.answerClick(Sender: TObject);
begin
lastnum:=0;
case lastset of
1:
begin num2:=num2+num1;num1:=num2;s:=FloatToStr(num2);num.Caption:=s;
lastset:=0;
end;
2:
begin num2:=num2-num1;num1:=num2;s:=FloatToStr(num2);num.Caption:=s;
lastset:=0;
end;
3:
begin num2:=num2*num1;num1:=num2;s:=FloatToStr(num2);num.Caption:=s;
lastset:=0;
end;
4: if num1=0 then showmessage('除数不能为0') else
begin num2:=num2/num1;num1:=num2;s:=FloatToStr(num2);num.Caption:=s;
lastset:=0;
end;
end;
num1:=num2;s:=FloatToStr(num2);num.Caption:=s;jing:=zhen;
end;
procedure Ts1.weiClick(Sender: TObject);
begin
num1:=num1*(-1);
s:=FloatToStr(num1);num.Caption:=s;jing:=zhen;
end;
procedure Ts1.sqrClick(Sender: TObject);
begin
if num1<>0 then begin num2:=num1;num2:=num1*num1;s:=FloatToStr(num2);
num.Caption:=s;num1:=0;jing:=zhen;end else begin
num2:=num2*num2;s:=FloatToStr(num2);num.Caption:=s;jing:=zhen;
end;
end;
procedure Ts1.holeClick(Sender: TObject);
begin
be:=(sender as TButton );
if jing>1 then begin
num1:=num1*jing+StrToInt(be.Caption);
s:=FloatToStr(num1);
num.Caption:=s;
end else begin
jing:=jing/zhen;
num1:=num1+StrToInt(be.Caption)*jing;
s:=FloatToStr(num1);
num.Caption:=s;end;
end;
procedure Ts1.jinClick(Sender: TObject);
begin
jing:=1;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -