home *** CD-ROM | disk | FTP | other *** search
/ Game Killer / Game_Killer.bin / 116.STATISTC.INC < prev    next >
Text File  |  1992-07-12  |  1KB  |  37 lines

  1. procedure StellarDispersion;
  2. const
  3.   maxDispersion = 29;
  4. var
  5.   s : sectorindex;
  6.   disperse : array [0..maxDIspersion] of integer;
  7.   average  : longint;
  8.   total,
  9.   temp,
  10.   lost     : integer;
  11. begin
  12.   write( 'Stellar Dispersion from what ');
  13.   s := GetSector;
  14.   if s = 0 then exit;
  15.   TwoWayDistances( s, distances, true, true );
  16.   for temp := 0 to maxDispersion do
  17.     disperse[ temp ] := 0;
  18.   lost := 0;
  19.   for s := 1 to maxSector do
  20.     if distances[s].d < maxint then
  21.       disperse[ distances[ s ].d ] := disperse[ distances[ s ].d ] + 1
  22.     else if space.sectors[s].number > 0 then   { visited, but not connected?}
  23.       lost := lost + 1;
  24.   average := 0;
  25.   total := 0;
  26.   for temp := 0 to maxDispersion do
  27.     begin
  28.       average := average + temp * disperse[ temp ];
  29.       total := total + disperse[ temp ];
  30.       write( disperse[ temp ] : 5 );
  31.       if temp mod 10 = 9 then
  32.         writeln;
  33.     end;
  34.   writeln('There are ', lost, ' unreachable sectors, ', total, ' reachable sectors.');
  35.   writeln('Average distance to (known) sectors: ', average / total : 2 : 2);
  36. end;
  37.