home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / simtel / cpmug / cpmug083.ark / LOG%.ALG < prev    next >
Encoding:
Text File  |  1984-04-29  |  931 b   |  25 lines

  1.  file LOG%.ALG
  2. Make a new version of LOG.ALG as follows:
  3. (1)  Start with the original LOG.ALG.
  4. (2)  Replace FUNCTION LOG (near the beginning of the file)
  5.           with this file below the line:
  6. -----------------------------------------------------------
  7.  
  8. FUNCTION LOG (EX1, % Optional: % EX2),
  9.   WHEN EMPTY(EX2), LOG (EX1, LOGBAS) EXIT,
  10.   WHEN ZERO(EX1),  ?(LIST('LOG, EX1, EX2))  EXIT,
  11.   WHEN EX2 EQ 1, ?(LIST('LOG, EX1, EX2))  EXIT,
  12.   WHEN PBRCH AND EX1 EQ 1, 0 EXIT,
  13.   WHEN PBRCH AND EX1=EX2, 1 EXIT,
  14.   WHEN NEGMULT(TRGEXPD,7) AND EX2=#E,
  15.     2*#I*ATAN(#I*(1-EX1)/(1+EX1))  EXIT,
  16.   WHEN PBRCH AND ZERO (MOD(EX1,EX2)),
  17.     1 + LOG (QUOTIENT(EX1,EX2), EX2)  EXIT,
  18.   WHEN NOT(EX2 EQ LOGBAS) AND POSMULT(LOGEXPD,2),
  19.     LOG(EX1,LOGBAS) / LOG(EX2,LOGBAS)  EXIT,
  20.   WHEN ATOM(EX1), LIST('LOG, EX1, EX2)  EXIT,
  21.   WHEN APPLY(GET('LOG,FIRST(EX1)), ADJOIN(EX2,ARGEX(EX1)))  EXIT,
  22.   LIST('LOG, EX1, EX2),
  23. ENDFUN $
  24.  
  25.