home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / cpm / basic / astrmenu.lbr / LENGTH.BZS / LENGTH.BAS
BASIC Source File  |  1987-04-26  |  1KB  |  52 lines

  1. 1 PRINT "From the July 1984 SKY & TELESCOPE, pp. 62-3."
  2. 2 PRINT
  3. 3 PRINT "This program calculates for any comet the length of stay inside 1 AU."
  4. 4 PRINT
  5. 5 PRINT "INPUT:  Perhelion distance (AU), eccentricity."
  6. 6 PRINT
  7. 7 PRINT "OUTPUT:  Days inside 1 AU."
  8. 8 PRINT
  9. 10 REM          LENGTH OF STAY
  10. 12 REM          INSIDE 1 AU
  11. 14 REM
  12. 16 K=.01720209895#
  13. 18 P=3.1415926536#
  14. 20 INPUT "PERIHELION DIST.  ";Q
  15. 22 INPUT "ECCENTRICITY      ";E
  16. 24 PRINT
  17. 26 T=0
  18. 28 IF E>1 OR E<0 THEN 22
  19. 30 IF Q>=1 THEN 78
  20. 32 IF Q<.0046524 THEN 82
  21. 34 IF E<1 THEN 54
  22. 36 REM
  23. 38 REM          PARABOLIC CASE
  24. 40 REM
  25. 42 T2=1/Q-1
  26. 44 T1=SQR(T2)
  27. 46 Q3=Q*Q*Q
  28. 48 T=SQR(2*Q3)*(3*T1+T1*T2)/(3*K)
  29. 50 GOTO 78
  30. 52 REM
  31. 54 REM          ELLIPTICAL CASE
  32. 56 REM
  33. 58 IF E=0 THEN 86
  34. 60 IF Q*(1+E)/(1-E)<=1 THEN 86
  35. 62 A=Q/(1-E)
  36. 64 C=(A-1)/(A*E)
  37. 66 IF C<>0 THEN 70
  38. 68 E1=P/2 : GOTO 76
  39. 70 S=SQR(1-C*C)
  40. 72 E1=ATN(S/C)
  41. 74 IF C<0 THEN E1=E1+P
  42. 76 T=A*SQR(A)*(E1-E*SIN(E1))/K
  43. 78 PRINT "DAYS:  ";2*T
  44. 80 GOTO 88
  45. 82 PRINT "COLLISION WITH SUN"
  46. 84 GOTO 88
  47. 86 PRINT "ALWAYS INSIDE 1 AU"
  48. 88 RUN"ASTRMENU.BAS"
  49. INT "DAYS:  ";2*T
  50. 80 GOTO 88
  51. 82 PRINT "COLLISION WITH SUN"
  52. 84 GO