home *** CD-ROM | disk | FTP | other *** search
/ ftp.barnyard.co.uk / 2015.02.ftp.barnyard.co.uk.tar / ftp.barnyard.co.uk / cpm / walnut-creek-CDROM / CPM / TURBOM2 / LOG10K.MOD < prev    next >
Text File  |  2000-06-30  |  896b  |  42 lines

  1. MODULE log10k;
  2.  
  3. FROM MathLib IMPORT Ln;
  4.  
  5. (*
  6.  
  7. T.A. Elkin's Log(10K!) Benchmark.
  8.  
  9. Computes number of decimal digits in 10,000 factorial.
  10. Exact answer is 35660
  11.  
  12. See COMPUTERWORLD. 3/20/87 for more info.
  13.  
  14. Adapted from the CP/M Basic Version by Jim Lill 7/20/87
  15.  
  16. Comparision Times:
  17.  
  18. IBM Compatible, GW-BASIC:               149 secs
  19. MBASIC 5.0 @ 10MHz:                     110 secs
  20. Turbo Pascal (CP/M @10MHz):             108 secs
  21. Turbo Modula-2 (CP/M 10MHz), M-code:     55 secs
  22. Turbo Modula-2 (CP/M 10MHz), Z80-code:  >55 secs
  23.  
  24. *)
  25.  
  26. CONST exact = 3566.0E1;
  27.  
  28. VAR i : INTEGER;
  29.     e,x,y,z : REAL;
  30.  
  31. BEGIN;  (*log10k*)
  32.   z:= 1.0E1;
  33.   x:= 0.0E0;
  34.   WRITELN('Elkins Log(10K!) Benchmark',CHR(7));
  35.   FOR i := 2 TO 10000 DO
  36.     y:= FLOAT(i);
  37.     x:= x + Ln(y);
  38.   END;
  39.   WRITELN('Done',CHR(7));
  40.   WRITELN('Error: ',(exact- x/Ln(z)))
  41. END log10k.
  42.