rank.dem

来自「Delphi Pascal 数据挖掘领域算法包 数值算法大全」· DEM 代码 · 共 59 行

DEM
59
字号
PROGRAM d8r7(input,output,dfile);
(* driver for routine RANK *)
CONST
   np=100;
TYPE
   gliarray = ARRAY [1..np] OF integer;
   glsarray = ARRAY [1..np] OF real;
VAR
   i,j,k,l : integer;
   a : glsarray;
   b : ARRAY [1..10] OF real;
   indx,irank : gliarray;
   dfile : text;

(*$I MODFILE.PAS *)
(*$I INDEXX.PAS *)

(*$I RANK.PAS *)

BEGIN
   glopen(dfile,'tarray.dat');
   readln(dfile);
   FOR i := 1 to 100 DO BEGIN
      read(dfile,a[i])
   END;
   close(dfile);
   indexx(np,a,indx);
   rank(np,indx,irank);
   writeln('original array is:');
   FOR i := 1 to 10 DO BEGIN
      FOR j := 1 to 10 DO BEGIN
         write (a[10*(i-1)+j]:6:2)
      END;
      writeln
   END;
   writeln('table of ranks is:');
   FOR i := 1 to 10 DO BEGIN
      FOR j := 1 to 10 DO BEGIN
         write(irank[10*(i-1)+j]:6)
      END;
      writeln
   END;
   writeln('press return to continue...');
   readln;
   writeln('array sorted according to rank table:');
   FOR i := 1 to 10 DO BEGIN
      FOR j := 1 to 10 DO BEGIN
         k := 10*(i-1)+j;
         FOR l := 1 to 100 DO BEGIN
            IF (irank[l] = k) THEN b[j] := a[l]
         END
      END;
      FOR j := 1 to 10 DO BEGIN
         write(b[j]:6:2)
      END;
   writeln
   END
END.

⌨️ 快捷键说明

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