home *** CD-ROM | disk | FTP | other *** search
/ Super Games / visualcdgame.iso / dosgames / contintl / distance.bas (.txt) < prev    next >
Encoding:
GW-BASIC  |  1992-06-30  |  4.3 KB  |  76 lines

  1. 10  REM -----------------------------------------------
  2. 20  REM    F C C   D I S T A N C E   P R O G R A M
  3. 30  REM -----------------------------------------------
  4. 40  REM
  5. 50  CLS : COLOR 7,0 : KEY OFF
  6. 60  PRINT "KEYTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENCLOSE"
  7. 70  PRINT "OPEN "; : COLOR 0,7 : PRINT "    SITE TO SITE DISTANCE USING GEOGRAPHICAL COORDINATES -- FCC METHOD     "; : COLOR 7,0 : PRINT " OPEN"
  8. 80  PRINT "SCREENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENLOAD"
  9. 90  CL$ = "                                                                                " 'Clear Line
  10. 95  DIM L(10), G(10)
  11. 100  FOR I = 1 TO 6 : L(I) = 0 : NEXT I
  12. 110  FOR I = 1 TO 6 : G(I) = 0 : NEXT I
  13. 120  LOCATE 6,30 : COLOR 7 : PRINT "COORDINATES A"
  14. 130  LOCATE 7,1 : PRINT "SOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUND"
  15. 140  LOCATE 9,1 : PRINT "SOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUND"
  16. 150  LOCATE 12,30 : COLOR 7 : PRINT "COORDINATES B"
  17. 160  LOCATE 13,1 : PRINT "SOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUND"
  18. 170  LOCATE 15,1 : PRINT "SOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUND"
  19. 180  GOSUB 610
  20. 190  GOSUB 680
  21. 200  GOSUB 210 : GOSUB 280 : GOTO 350
  22. 210  LOCATE 8,14 : INPUT "",L1$ : L1 = VAL(L1$) : IF L1 < 0 OR L1 > 180 THEN 210 ELSE GOSUB 610 : GOSUB 620
  23. 220  LOCATE 8,20 : INPUT "",L2$ : L2 = VAL(L2$) : IF L2 < 0 OR L2 > 59.9 THEN 220 ELSE GOSUB 610 : GOSUB 620 : GOSUB 630
  24. 230  LOCATE 8,25 : INPUT "",L3$ : L3 = VAL(L3$) : IF L3 < 0 OR L3 > 59.9 THEN 230 ELSE GOSUB 610 : GOSUB 620 : GOSUB 630 : GOSUB 640
  25. 240  LOCATE 8,61 : INPUT "",G1$ : G1 = VAL(G1$) : IF G1 < 0 OR G1 > 180 THEN 240 ELSE GOSUB 610 : GOSUB 620 : GOSUB 630 : GOSUB 640 : GOSUB 650
  26. 250  LOCATE 8,67 : INPUT "",G2$ : G2 = VAL(G2$) : IF G2 < 0 OR G2 > 59.9 THEN 250 ELSE GOSUB 610 : GOSUB 620 : GOSUB 630 : GOSUB 640 : GOSUB 650 : GOSUB 660
  27. 260  LOCATE 8,73 : INPUT "",G3$ : G3 = VAL(G3$) : IF G3 < 0 OR G3 > 59.9 THEN 260 ELSE GOSUB 610 : GOSUB 620 : GOSUB 630 : GOSUB 640 : GOSUB 650 : GOSUB 660 : GOSUB 670
  28. 270  RETURN
  29. 280  LOCATE 14,14 : INPUT "",L4$ : L4 = VAL(L4$) : IF L4 < 0 OR L4 > 180 THEN 280 ELSE GOSUB 680 : GOSUB 690
  30. 290  LOCATE 14,20 : INPUT "",L5$ : L5 = VAL(L5$) : IF L5 < 0 OR L5 > 59.9 THEN 290 ELSE GOSUB 680 : GOSUB 690 : GOSUB 700
  31. 300  LOCATE 14,25 : INPUT "",L6$ : L6 = VAL(L6$) : IF L6 < 0 OR L6 > 59.9 THEN 300 ELSE GOSUB 680 : GOSUB 690 : GOSUB 700 : GOSUB 710
  32. 310  LOCATE 14,61 : INPUT "",G4$ : G4 = VAL(G4$) : IF G4 < 0 OR G4 > 180 THEN 310 ELSE GOSUB 680 : GOSUB 690 : GOSUB 700 : GOSUB 710 : GOSUB 720
  33. 320  LOCATE 14,67 : INPUT "",G5$ : G5 = VAL(G5$) : IF G5 < 0 OR G5 > 59.9 THEN 320 ELSE GOSUB 680 : GOSUB 690 : GOSUB 700 : GOSUB 710 : GOSUB 720 : GOSUB 730
  34. 330  LOCATE 14,73 : INPUT "",G6$ : G6 = VAL(G6$) : IF G6 < 0 OR G6 > 59.9 THEN 330 ELSE GOSUB 680 : GOSUB 690 : GOSUB 700 : GOSUB 710 : GOSUB 720 : GOSUB 730 : GOSUB 740
  35. 340  RETURN
  36. 350  LOCATE 22,1:PRINT CL$:LOCATE 22,1:COLOR 15:PRINT "A";:COLOR 7:PRINT " - Change Coordinates A     ";:COLOR 15:PRINT "B";:COLOR 7:PRINT " - Change Coordinates B     ";:COLOR 15:PRINT "C";:COLOR 7:PRINT " - Calculate Distance" : COLOR 7
  37. 360  A$ = INPUT$(1)
  38. 370  IF A$ = "a" OR A$ = "A" THEN GOSUB 610 : GOSUB 210 : GOTO 350
  39. 380  IF A$ = "b" OR A$ = "B" THEN GOSUB 680 : GOSUB 280 : GOTO 350
  40. 390  IF A$ = "c" OR A$ = "C" THEN GOTO 410
  41. 400  GOTO 360
  42. 410  LR = L1 + ((L2 + (L3 / 60)) / 60) : GG = G1 + ((G2 + (G3 / 60)) / 60) : LS = L4 + ((L5 + (L6 / 60)) / 60) : GS = G4 + ((G5 + (G6 / 60)) / 60)
  43. 420  LL = (LR + LS) / 2 : RR = LL / 57.2958 : KT = 68.53 + (LL * 0.0116) : KN = 69.25 * COS(RR) : DT = LS - LR :DN = GG - GS : MT = DT * KT : MN = DN * KN : MI = SQR (MN^2 + MT^2) : KM = MI * 1.609
  44. 430  IF MT = 0 THEN GOTO 460
  45. 440  AQ = MN / MT
  46. 450  GOTO 480
  47. 460  IF MN > 0 THEN AQ = 9999
  48. 470  IF MN =< 0 THEN AQ = -9999
  49. 480  AZ = 57.2985 * ATN(AQ)
  50. 490  IF MT < 0 THEN AZ = AZ + 180
  51. 500  IF AZ < 0 THEN AZ = AZ + 360
  52. 510  LOCATE 18,10 : PRINT USING "Distance: ###.## Miles";MI
  53. 520  LOCATE 19,20 : PRINT USING "###.## Kilometers";KM
  54. 530  LOCATE 18, 47 : PRINT USING "Bearing: N ###.# E Degrees";AZ
  55. 540  LOCATE 22,1:PRINT CL$:LOCATE 22,5:COLOR 15:PRINT "A";:COLOR 7:PRINT " - Change Coordinates A     ";:COLOR 15:PRINT "B";:COLOR 7:PRINT " - Change Coordinates B     ";:COLOR 15:PRINT "Q";:COLOR 7:PRINT " - Quit" : COLOR 7
  56. 550  A$ = INPUT$(1)
  57. 560  IF A$ = "a" OR A$ = "A" THEN GOSUB 600 : GOSUB 610 : GOSUB 210 : GOTO 350
  58. 570  IF A$ = "b" OR A$ = "B" THEN GOSUB 600 : GOSUB 680 : GOSUB 280 : GOTO 350
  59. 580  IF A$ = "q" OR A$ = "Q" THEN RUN "TECHMENU"
  60. 590  GOTO 550
  61. 600  LOCATE 18,1 : PRINT CL$ : LOCATE 19,1 : PRINT CL$ : LOCATE 22,1 : PRINT CL$ : RETURN : REM CLEAR ANSWER LINES
  62. 610  LOCATE 8,2 : PRINT"LATITUDE:      <UNK! {00F8}>    '      "; CHR$(34); "                 LONGITUDE:       <UNK! {00F8}>    '       ";CHR$(34) : RETURN
  63. 620  LOCATE 8,14 : PRINT USING "###"; L1 : RETURN
  64. 630  LOCATE 8,20 : PRINT USING "##"; L2 : RETURN
  65. 640  LOCATE 8,25 : PRINT USING "##.#"; L3 : RETURN
  66. 650  LOCATE 8,61 : PRINT USING "###"; G1 : RETURN
  67. 660  LOCATE 8,67 : PRINT USING "##"; G2 : RETURN
  68. 670  LOCATE 8,73 : PRINT USING "##.#"; G3 : RETURN
  69. 680  LOCATE 14,2 : PRINT"LATITUDE:      <UNK! {00F8}>    '      "; CHR$(34); "                 LONGITUDE:       <UNK! {00F8}>    '       ";CHR$(34) : RETURN
  70. 690  LOCATE 14,14 : PRINT USING "###"; L4 : RETURN
  71. 700  LOCATE 14,20 : PRINT USING "##"; L5 : RETURN
  72. 710  LOCATE 14,25 : PRINT USING "##.#"; L6 : RETURN
  73. 720  LOCATE 14,61 : PRINT USING "###"; G4 : RETURN
  74. 730  LOCATE 14,67 : PRINT USING "##"; G5 : RETURN
  75. 740  LOCATE 14,73 : PRINT USING "##.#"; G6 : RETURN
  76.