📄 unit1.pas
字号:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Memo1: TMemo;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
ISET:^integer; GSET:^real;
implementation
//PROGRAM D11R6A
//Driver for routine TUTEST
uses
unit2;
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
const
s1='%9.2f'; NPTS = 5000; MPTS = 1000; NSHFT = 10; EPS = 0.02;
VAR1 =1.0; VAR2 = 4.0;
var
F:TextFile;
DATA1:array[0..NPTS] of real; DATA2:array[0..MPTS] of real;
I,J:integer; FCTR1,FCTR2,T,PROB,SHIFT:real;
begin
New(ISET); New(GSET);
Randomize;
//Generate Gaussian distributed data
//输出计算结果到文件
AssignFile(F, 'd:\delphi_shu\p11\d11r6A.dat');
Rewrite(F);
//Generate two Gaussian distributions of different variance
FCTR1:=Sqrt(VAR1);
For I:=1 To NPTS do
DATA1[I]:=FCTR1 * GASDEV;
FCTR2:=Sqrt(VAR2);
For I:=1 To MPTS do
DATA2[I]:=(NSHFT / 2) * EPS + FCTR2 * GASDEV;
Writeln(F,'Distribution #1: variance:= ', Format('%4.2f',[VAR1]));
Writeln(F,'Distribution #2: variance:= ', Format('%4.2f',[VAR2]));
Writeln(F);
Writeln(F,' Shift T Probability');
For I:=1 To NSHFT + 1 do
begin
TUTEST(DATA1, NPTS, DATA2, MPTS, T, PROB);
SHIFT:=(I - 1) * EPS;
Writeln(F,Format(s1,[SHIFT]),Format(s1,[T]),Format(s1,[PROB]));
For J:=1 To NPTS do
DATA1[J]:=DATA1[J] + EPS;
end;
CloseFile(F);
//屏幕显示计算结果
memo1.Lines.LoadFromFile('d:\delphi_shu\p11\d11r6A.dat');
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -