📄 d1r2.txt
字号:
implementation
//PROGRAM D1R2
//Driver for routine LUBKSB,LUDCMP
uses
unit2;
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
var
A,A1:matrx2;
B,INDX,X:Array[0..3] of real;
I,J:Integer; D:real;
F:TextFile;
const
s1='%10.1f'; N = 3;
begin
setlength(A,4,4);
setlength(A1,4,4);
//输入已知的方程组的系数矩阵
A[1, 1]:=1; A[1, 2]:=2; A[1, 3]:=3;
A[2, 1]:=2; A[2, 2]:=2; A[2, 3]:=3;
A[3, 1]:=3; A[3, 2]:=3; A[3, 3]:=3;
//输入已知的方程组的右端向量B
B[1]:=1;
B[2]:=2;
B[3]:=3;
//输出计算结果到文件
AssignFile(F, 'd:\delphi_shu\p1\d1r2.dat');
Rewrite(F);
Writeln(F, '已知的方程组的右端向量');
For I:= 1 To 3 do
Writeln(F,Format(s1,[B[I]]));
For I:=1 To N do
begin
For J:=1 To 3 do
A1[I, J]:=A[I, J];
end;
LUDCMP(A1, N, INDX, D);
For I:= 1 To N Do
X[I]:=B[I];
LUBKSB(A1, N, INDX, X);
Writeln(F, '计算出的方程组的解');
For I:= 1 To 3 do
Writeln(F,Format(s1,[X[I]]));
Writeln(F, '将计算出的解B乘以系数矩阵,以验证计算结果正确');
For I:=1 To N do
begin
B[I]:=0;
For J:=1 To N do
B[I]:=B[I] + A[I, J] * X[J];
end;
For I:= 1 To 3 do
Writeln(F,Format(s1,[B[I]]));
CloseFile(F);
//屏幕显示计算结果
memo1.Lines.LoadFromFile('d:\delphi_shu\p1\d1r2.dat');
end;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -