unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Label1: TLabel;
Label2: TLabel;
ScrollBar1: TScrollBar;
Button1: TButton;
Button2: TButton;
Edit1: TEdit;
procedure Button1Click(Sender: TObject);
procedure ScrollBar1Change(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
function fac(n: integer): real;
implementation
{$R *.dfm}
function fac(n: integer): real;
begin
if n=0 then
fac := 1
else
fac := n * fac(n-1);
end;
procedure TForm1.Button1Click(Sender: TObject);
var
e: real;
n,i: integer;
begin
e := 0;
n := scrollbar1.Position;
for i := 0 to n - 1 do
e := e + 1/fac(i);
edit1.Text := floattostr(e);
//应用滚动条,来获取当前需计算的关系式的项数
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
close;
end;
procedure TForm1.ScrollBar1Change(Sender: TObject);
begin
label2.Caption := format('计算前%d项',[scrollbar1.position]);
end;
end.
