⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 unit1.pas

📁 《Delphi常用数值算法集》的配书源码
💻 PAS
字号:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls;
type
    matrx2=array of array of real;
type
  TForm1 = class(TForm)
    Button1: TButton;
    Memo1: TMemo;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation
//PROGRAM D1R11
//Driver for routine QRBKSB,QRDCMP
uses
  unit2;
  {$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
var
    A,Q,C:matrx2;
    B,R,X:Array[0..5] of real;
    I,J:Integer;
    F:TextFile;
const
    s1='%10.1f'; s2='%13.4f';  N = 5;
begin
  setlength(A ,6,6);
  setlength(Q ,6,6);
  setlength(C ,6,6);
  //输入已知的方程组的系数矩阵
  A[1, 1]:=1.4;A[1, 2]:=2.1;A[1, 3]:=2.1;A[1, 4]:=7.4;A[1, 5]:=9.6;
  A[2, 1]:=1.6;A[2, 2]:=1.5;A[2, 3]:=1.1;A[2, 4]:=0.7;A[2, 5]:=5;
  A[3, 1]:=3.8;A[3, 2]:=8  ;A[3, 3]:=9.6;A[3, 4]:=5.4;A[3, 5]:=8.8;
  A[4, 1]:=4.6;A[4, 2]:=8.2;A[4, 3]:=8.4;A[4, 4]:=0.4;A[4, 5]:=8;
  A[5, 1]:=2.6;A[5, 2]:=2.9;A[5, 3]:=0.1;A[5, 4]:=9.9;A[5, 5]:=7.7;
  //输入已知的方程组的右端向量B
  B[1]:=1.1;       B[2]:=1.6;
  B[3]:=4.7;       B[4]:=9.1;
  B[5]:=0.1;
  //输出计算结果到文件
  AssignFile(F, 'd:\delphi_shu\p1\d1r11.dat');
  Rewrite(F);
  Writeln(F, '已知的方程组的右端向量');
  For I:= 1 To N do
    Writeln(F,Format(s1,[B[I]]));
  For I:=1 To N do
    begin
      For J:=1 To N do
        C[I,J]:= A[I, J];
    end;
  QRDCMP(C,N,N,Q);
  For I:=1 To N do
      R[I]:= B[I];
  QRBKSB(C,N,Q,R,X);
  Writeln(F, '计算出的方程组的解');
  For I:= 1 To N do
    Writeln(F,Format(s2,[X[I]]));
  Writeln(F, '将计算出的解乘以系数矩阵,以验证计算结果');
  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 N do
    Writeln(F,Format(s1,[B[I]]));
  CloseFile(F);
  //屏幕显示计算结果
  memo1.Lines.LoadFromFile('d:\delphi_shu\p1\d1r11.dat');
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -