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

📄 d3r6.txt

📁 Numeric Programs
💻 TXT
字号:
var
  Form1: TForm1;
  CHOOSE:string;   IT:integer;   
implementation
//PROGRAM D3R6
//Driver for routine QROMO
uses
  unit2;
  {$R *.DFM}

Function FUNCL(X:real):real;
begin
    FUNCL:= Sqrt(X) / Sin(X);
end;
Function FUNCU(X:real):real;
const PI = 3.1415926;
begin
    FUNCU:= Sqrt(PI - X) / Sin(X);
end;
Function FUNCINF(X:real):real;
begin
    FUNCINF:= Sin(X) / sqr(X);
end;
Function FUNCEND(X:real):real;
begin
    FUNCEND:= Exp(-X) / Sqrt(X);
end;
Function FUNC(X:real):real;
begin
    //Dim CHOOSE As String
    If CHOOSE = 'FUNCL' Then FUNC:= FUNCL(X);
    If CHOOSE = 'FUNCU' Then FUNC:= FUNCU(X);
    If CHOOSE = 'FUNCINF' Then FUNC:= FUNCINF(X);
    If CHOOSE = 'FUNCEND' Then FUNC:= FUNCEND(X);
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  F:TextFile; 
  X1,X2,X3,AINF,RESULT,RES1,RES2:real;
const
  s1='%8.4f';
begin
  X1:=0;
  X2:=1.5707963;
  X3:=3.1415926;
  AINF:=1E+20;
  //输出计算结果到文件
  AssignFile(F, 'd:\delphi_shu\p3\d3r6.dat');
  Rewrite(F);
  Writeln(F, 'Improper integrals');
  Writeln(F);
  CHOOSE:='FUNCL';
  QROMO(X1, X2, RESULT, 'MIDSQL');
  Writeln(F, 'Function: Sqrt(x)/SIN(x) Interval: (0,PI/2)');
  Writeln(F, 'Using: MIDSQL           Result: ',format(s1,[RESULT]));
  Writeln(F);
  CHOOSE:='FUNCU';
  QROMO(X2, X3, RESULT, 'MIDSQU');
  Writeln(F, 'Function: Sqrt(PI-x)/SIN(x) Interval: (PI/2,PI)');
  Writeln(F, 'Using: MIDSQL           Result: ', format(s1,[RESULT]));
  Writeln(F);
  CHOOSE:='FUNCINF';
  QROMO(X2, AINF, RESULT, 'MIDINF');
  Writeln(F, 'Function: SIN(x)/x^2  Interval: (PI/2,infty)');
  Writeln(F, 'Using: MIDINF         Result: ', format(s1,[RESULT]));
  Writeln(F);
  CHOOSE:='FUNCINF';
  QROMO(-AINF, -X2, RESULT, 'MIDINF');
  Writeln(F, 'Function: SIN(x)/x^2  Interval: (-infty,-PI/2)');
  Writeln(F, 'Using: MIDINF         Result: ', format(s1,[RESULT]));
  Writeln(F);
  CHOOSE:='FUNCEND';
  QROMO(X1, X2, RES1, 'MIDSQL');
  QROMO(X2, AINF, RES2, 'MIDINF');
  Writeln(F, 'Function: EXP(-x)/Sqrt(x)  Interval: (0,infty)');
  Writeln(F, 'Using: MIDSQL,MIDINF      Result: ', format(s1,[RES1 + RES2]));

  CloseFile(F);
  //屏幕显示计算结果
  memo1.Lines.LoadFromFile('d:\delphi_shu\p3\d3r6.dat');
end;

⌨️ 快捷键说明

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