参考答案
实验1-1 欢迎使用Delphi 源代码
procedure TForm1.FormCreate(Sender: TObject); begin LABEL1.Caption:='欢迎你使用
Delphi'; label1.Font.Size:=12; end; procedure TForm1.ButtonClick(Sender: TObject); begin close; end; 实验1-2 简单的加法计算器源代码 procedure TForm1.FormCreate(Sender: TObject); begin form1.Caption:='计算器'; end; procedure TForm1.Button1Click(Sender: TObject); begin edit3.Text:=inttostr(strtoint(edit1.Text)+strtoint(edit2.Text)); end;
procedure TForm1.Button2Click(Sender: TObject);
begin
close;
end;
实验2-1
var
i:integer;
sum,t:real;
s:string;
begin
i:=1;
t:=1;
sum:=0;
while t>0.001 do
begin
sum:=sum+t;
i:=i+1;
t:=i/(2*i-1);
end;
s:=format(' %10.11f ',[sum]);
edit1.Text :=s;
end;
实验 2-2 已知三边求三角形面积源代码
procedure TForm1.Button1Click(Sender: TObject);
VAR
a,b,c,s,area:real;
40
begin
a:=strtofloat(edit1.text);
b:=strtofloat(edit2.text);
c:=strtofloat(edit3.text);
s:=(a+b+c)/2;
if (s>0) and (s>a) and (s>b) and (s>c) then
begin
area := sqrt(s*(s-a)*(s-b)*(s-c));
label5.Caption :=floattostr(SimpleRoundTo(area,-2));
end
else
label5.Caption :='不能构成三角形';
end;
SimpleRoundTo 为四舍五入
实验2-3 截取钢管
源代码 procedure TForm1.BitBtn1Click(Sender: TObject);
var
i,j,k,min:integer; n1,n2,n3,Temp:integer; begin min := 10000; for k := 13 to 10000 div 177 do for j := 17 to 10000 div 133 do for i := 15 to 10000 div 112 do begin Temp := 10000-177*k -133*j -112* i; if (Temp>=0) and (Temp
41 end;
procedure TForm1.BitBtn2Click(Sender: TObject);
begin
close;
end;
实验2-4 计算器
var
Form1: TForm1;
temp1:string;
temp2:real;
temp3:string;
n:integer;
flag:integer;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
form1.Edit1.Clear;
end;
procedure TForm1.Button16Click(Sender : TObject);
begin
edit1.Clear;
end;
procedure TForm1.Button14Click(Sender: TObject); begin flag:=4; //除 temp1:=edit1.Text; edit1.Clear; n:=1; end; procedure TForm1.Button13Click(Sender: TObject); begin flag:=3; //* temp1:=edit1.Text; edit1.Clear; n:=1; end; procedure TForm1.Button12Click(Sender: TObject);
42 begin flag:=2; //- temp1:=edit1.Text; edit1.Clear; n:=1; //n 保证连减时不会出错误 end;
procedure TForm1.Button11Click(Sender: TObject);
begin
flag:=1; //+
temp1:=edit1.Text;
edit1.Clear;
n:=1; end;
procedure TForm1.Button15Click(Sender: TObject);
begin
if n>0 Then
temp3:=edit1.Text
else
temp1:=edit1.Text;
case flag of //=
1: temp2:=strtofloat(temp3)+strtofloat(temp1);
2: temp2:=strtofloat(temp1)-strtofloat(temp3);
3:temp2:=strtofloat(temp3)*strtofloat(temp1);
4:temp2:=strtofloat(temp1)/strtofloat(temp3);
end;
edit1.Text:=floattostr(temp2);
n:=0;
end;
//n 保证连加时不会出错误
procedure TForm1.Button10Click(Sender: TObject);
begin
edit1.Text:=edit1.Text+'0';
end;
procedure TForm1.Button9Click(Sender: TObject);
begin
edit1.Text:=edit1.Text+'9';
end;
procedure TForm1.Button8Click(Sender: TObject);
begin
43 end;
procedure TForm1.Button7Click(Sender: TObject);
begin
edit1.Text:=edit1.Text+'7';
end;
procedure TForm1.Button6Click(Sender