home *** CD-ROM | disk | FTP | other *** search
/ Simtel MSDOS 1992 September / Simtel20_Sept92.cdr / msdos / rbbs_pc / calllog.arc / CALCJUL.BAS next >
BASIC Source File  |  1989-03-08  |  896b  |  33 lines

  1. SUB CALCJUL ( JULYEAR%, JULDAY%, OFFSET% ) STATIC
  2. REM (C)opyright 1989 James J. Eager
  3. REM
  4. REM taken the given Julian date and add the OFFSET% days to it (can be plus
  5. REM or minus - so be careful.
  6. REM
  7. REM input - OFFSET%
  8. REM output - JULYEAR%, JULDAY%
  9. REM
  10. JULDAY% = JULDAY% + OFFSET%
  11. IF JULDAY% > 0 AND JULDAY% < 366 THEN_
  12.     EXIT SUB
  13. IF JULDAY% < 1 THEN_
  14.     JULDAY% = JULDAY% + 365:_
  15.     JULYEAR% = JULYEAR% - 1:_
  16.     WORKYEAR% = JULYEAR% / 4:_
  17.     WORKYEAR = JULYEAR% / 4:_
  18.     IF WORKYEAR% = WORKYEAR THEN_
  19.         JULDAY% = JULDAY% + 1:_
  20.         EXIT SUB:_
  21.     ELSE_
  22.         EXIT SUB
  23. WORKYEAR% = JULYEAR% / 4
  24. WORKYEAR = JULYEAR% / 4
  25. IF WORKYEAR% = WORKYEAR THEN_
  26.     IF JULDAY% < 367 THEN_
  27.         EXIT SUB:_
  28.     ELSE_
  29.         JULDAY% = JULDAY% - 1
  30. JULDAY% = JULDAY% - 365
  31. JULYEAR% = JULYEAR% + 1
  32. END SUB
  33.