home *** CD-ROM | disk | FTP | other *** search
/ Oakland CPM Archive / oakcpm.iso / cpmug / cpmug026.ark / CLOUD-9.ASC < prev    next >
Text File  |  1984-04-29  |  5KB  |  199 lines

  1. 10 REM--A.C.CAGGIANO+E.A.GALLETTA, PATCHOGUE H.S., 11-20-68 
  2. 11 REM--REVISED BY CHARLES LOSIK AND TONY PEREZ 7/18/69 
  3. 12 REM RE-REVISED BY C.LOSIK 8-26-70
  4. 20 REM--THIS PROGRAM IS ASSOCIATED WITH CLOUD FORMATION 
  5. 25 REM PHASE I OF PROGRAM BEGINS HERE. STUDENTS WILL BE GIVEN
  6. 26 REM INTRODUCTORY INFORMATION AND BE ALLOWED TO ASK AND ANSWER 
  7. 27 REM ANY NUMBER OF PROBLEMS. WHEN THEY INPUT NO. 2 (LINES 554-556) 
  8. 28 REM PROGRAM SENDS THEM TO PHASE II (LINE 561 AND FOLLOWING). 
  9. 30 PRINT" ","CLOUD NINE" 
  10. 40 PRINT" ","===== ====" 
  11. 45 DIM B(2), T(4), Q(3), A(3), C(3) 
  12. 50 PRINT 
  13. 60 PRINT" STRONG CONVECTION CURRENTS ARE CAUSING ADIABATIC" 
  14. 70 PRINT"COOLING OF AIR WHERE YOU ARE AND ARE RESPONSIBLE FOR THE"
  15. 80 PRINT"FORMATION OF A CLOUD. BOTH THE DRY AND THE MOIST ADIABATIC" 
  16. 90 PRINT"(AS WELL AS THE NORMAL LAPSE RATES) ARE CONSIDERED IN THIS" 
  17. 91 PRINT"PROGRAM."
  18. 100 PRINT 
  19. 105 PRINT 
  20. 110 PRINT" ","LEGEND" 
  21. 120 PRINT" ","======" 
  22. 140 PRINT"1="; 
  23. 150 GOSUB1000 
  24. 160 PRINT"2="; 
  25. 170 GOSUB1010 
  26. 180 PRINT"3="; 
  27. 190 GOSUB1020 
  28. 200 PRINT"4="; 
  29. 210 GOSUB1030 
  30. 220 PRINT 
  31. 225 PRINT 
  32. 230 PRINT"CHOOSE ANY TWO OF THE ABOVE VARIABLES AND SELECT VALUES FOR" 
  33. 231 PRINT"THEM. TYPE THEM IN AS:" 
  34. 232 PRINT"VARIABLE CODE ,VALUE, VARIABLE CODE ,VALUE...(E.G. 1,50,2,30)" 
  35. 233 PRINT 
  36. 240 X=0
  37. 242 Y=0
  38. 245 A=0
  39. 246 B=0
  40. 247 B(1)=0 
  41. 248 B(2)=0 
  42. 250 INPUTB(1),A,B(2),B 
  43. 290 PRINT 
  44. 300 FORI=1TO4 
  45. 310 IFB(1)=ITHEN330
  46. 320 NEXTI 
  47. 330 T(I)=A 
  48. 340 FORJ=1TO4 
  49. 350 IFB(2)=JTHEN370
  50. 360 NEXTJ 
  51. 370 T(J)=B 
  52. 380 IFI<>JTHEN405 
  53. 390 PRINT"YOU CAN'T USE THE SAME VALUES TWICE."
  54. 395 GOTO250
  55. 405 PRINT"OKAY, TYPE IN YOUR CALCULATED VALUE FOR";
  56. 406 PRINT 
  57. 410 IFJ*I<>2THEN425
  58. 411 T=(T(1)-T(2))/4.5 
  59. 412 T(4)=1000*T 
  60. 413 T(3)=T(2)-T 
  61. 414 GOSUB1020 
  62. 415 GOSUB1050 
  63. 416 GOSUB1030 
  64. 417 INPUTX,Y 
  65. 418 IFABS(X-T(3))>=.6THEN500 
  66. 419 IFABS(Y-T(4))>=.6THEN500 
  67. 420 GOTO550
  68. 425 IFJ*I<>3THEN440
  69. 426 T=(T(1)-T(3))/5.5 
  70. 427 T(4)=1000*T 
  71. 428 T(2)=T+T(3) 
  72. 429 GOSUB1010 
  73. 430 GOSUB1050 
  74. 431 GOSUB1030 
  75. 432 INPUTX,Y 
  76. 433 IFABS(X-T(2))>=.6THEN500 
  77. 434 IFABS(Y-T(4))>=.6THEN500 
  78. 435 GOTO550
  79. 440 IFJ*I<>4THEN455
  80. 441 T=T(4)/1000 
  81. 442 T(2)=T(1)-4.5*T 
  82. 443 T(3)=T(2)-T 
  83. 444 GOSUB1010 
  84. 445 GOSUB1050 
  85. 446 GOSUB1020 
  86. 447 INPUTX,Y 
  87. 448 IFABS(X-T(2))>=.6THEN500 
  88. 449 IFABS(Y-T(3))>=.6THEN500 
  89. 450 PRINT"OKAY, TYPE IN YOUR CALCULATED VALUE FOR" 
  90. 455 IFJ*I<>6THEN470
  91. 456 T=T(2)-T(3) 
  92. 457 T(4)=1000*T 
  93. 458 T(1)=T(3)+5.5*T 
  94. 459 GOSUB1000 
  95. 460 GOSUB1050 
  96. 461 GOSUB1030 
  97. 462 INPUTX,Y 
  98. 463 IFABS(X-T(1))>=.6THEN500 
  99. 464 IFABS(Y-T(4))>=.6THEN500 
  100. 465 GOTO550
  101. 470 IFJ*I<>8THEN485
  102. 471 T=T(4)/1000 
  103. 472 T(3)=T(2)+T 
  104. 473 T(1)=T(2)+6.5*T 
  105. 474 GOSUB1010 
  106. 475 GOSUB1050 
  107. 476 GOSUB1020 
  108. 477 INPUTX,Y 
  109. 478 IFABS(X-T(1))>=.6THEN500 
  110. 479 IFABS(Y-T(3))>=.6THEN500 
  111. 480 GOTO550
  112. 481 IFABS(X-T(3))>=.6THEN500 
  113. 485 IFJ*I<>12THEN390 
  114. 486 T=T(4)/1000 
  115. 487 T(1)=T(3)+5.5*T 
  116. 488 T(2)=T(3)+T 
  117. 489 GOSUB1000 
  118. 490 GOSUB1050 
  119. 491 GOSUB1010 
  120. 492 INPUTX,Y 
  121. 493 IFABS(X-T(1))>=.6THEN500 
  122. 494 IFABS(Y-T(2))>=.6THEN500 
  123. 495 GOTO550
  124. 500 PRINT 
  125. 502 PRINT"IT LOOKS LIKE WE GOOFED SOME PLACE." 
  126. 505 PRINT"LET'S SEE WHAT THE CORRECT VALUES ARE." 
  127. 507 PRINT 
  128. 510 PRINT T(1);"DEGREES - "; 
  129. 512 GO SUB 1000
  130. 515 PRINT T(2);"DEGREES - "; 
  131. 517 GO SUB 1010
  132. 520 PRINT T(3);"DEGREES - "; 
  133. 522 GO SUB 1020
  134. 525 PRINT T(4);"FEET - "; 
  135. 527 GO SUB 1030
  136. 530 PRINT 
  137. 535 GOTO554
  138. 550 PRINT 
  139. 552 PRINT"VERY GOOD. VERY, VERY GOOD."
  140. 553 PRINT 
  141. 554 PRINT"DO YOU HAVE ANY OTHER PROBLEMS YOU WOULD LIKE TO TRY?" 
  142. 555 PRINT "(1=YES, 0=NO) : "; 
  143. 556 INPUT P
  144. 557 IFP<1THEN561 
  145. 558 PRINT 
  146. 559 PRINT"USING THE SAME LEGEND AS BEFORE..." 
  147. 560 GOTO230
  148. 561 H=(T(1)-T(3))*2000-7*T(4) 
  149. 562 REM LINE 561 CALCULATES ALTITUDE FOR TOP OF CLOUD AND BEGINS 
  150. 563 REM PHASE II OF PROGRAM. PROBLEM NO.2 IN THIS PART (CALCULATION 
  151. 564 REM OF TEMP. ABOVE CLOUD TOP) INVOLVES USE OF THE NORMAL LAPSE RATE. 
  152. 565 PRINT 
  153. 567 PRINT"WELL, BEFORE YOU LEAVE, I HAVE A FEW I'D LIKE YOU TO TRY..." 
  154. 570 PRINT"BASED ON YOUR VALUES, THE HEIGHT OF THE CLOUD" 
  155. 580 PRINT"(MEASURED FROM THE CLOUD BASE) IS ";H;"FT. CAN YOU TELL ME:"
  156. 600 Q(1)=.7*T(4)
  157. 601 Q(2)=T(4)+1.5*H 
  158. 602 Q(3)=T(4)+.5*H 
  159. 610 A(1)=T(1)-T(4)*3.85E-03 
  160. 611 A(2)=T(1)-(T(4)+1.5*H)*3.5E-03 
  161. 612 A(3)=T(3)-1.5E-03*H 
  162. 614 PRINT 
  163. 615 PRINT"WHAT IS THE TEMPERATURE AT EACH OF THESE ALTITUDES:" 
  164. 620 FORN=1TO3 
  165. 625 PRINT" ",N;INT(Q(N)+.5);"FT" 
  166. 627 NEXT N 
  167. 628 PRINT 
  168. 629 FORN=1TO3 
  169. 630 PRINT"THE TEMPERATURE AT ";INT(Q(N)+.5);" FT. IS ";
  170. 631 INPUTC(N) 
  171. 635 IFABS(C(N)-A(N))>1.1THEN750
  172. 640 NEXTN 
  173. 699 PRINT 
  174. 700 PRINT"WOW, YOU MUST BE A BRAIN. AND YOU PROBALLY KNOW"
  175. 710 PRINT"A LOT ABOUT CLOUDS AND THINGS LIKE THAT. IT WAS VERY" 
  176. 720 PRINT"NICE TO WORK WITH SOMEONE WHO UNDERSTANDS ME." 
  177. 730 PRINT" ","THANK YOU AND . . . . PEACE AND LONG LIFE" 
  178. 740 STOP 
  179. 750 PRINT 
  180. 755 PRINT"SORRY. YOU WERE DOING GREAT THERE FOR A WHILE." 
  181. 760 PRINT"WELL, BACK TO THE BOOKS. THE VALUES YOU SHOULD HAVE ARE:" 
  182. 765 PRINT 
  183. 770 FORN=1TO3 
  184. 774 PRINTN;
  185. 780 PRINT"THE TEMPERATURE AT";INT(Q(N)+.5);"FEET IS ";A(N);"DEGREES" 
  186. 790 NEXTN 
  187. 830 STOP 
  188. 1000 PRINT"THE TEMPERATURE ON THE GROUND" 
  189. 1005 RETURN 
  190. 1010 PRINT"THE DEW POINT TEMPERATURE ON THE GROUND" 
  191. 1015 RETURN 
  192. 1020 PRINT"THE TEMPERATURE AT THE BASE OF THE CLOUD"
  193. 1025 RETURN 
  194. 1030 PRINT"THE ELEVATION, IN FEET, OF THE CLOUD BASE" 
  195. 1035 RETURN 
  196. 1050 PRINT"FOLLOWED BY A COMMA, AND THEN TYPE IN YOUR VALUE FOR " 
  197. 1055 RETURN 
  198. 2000 END
  199.