home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / World_Of_Computer_Software-02-387-Vol-3of3.iso / c / civil-ab.zip / MNDOTHYD.ZIP / CULVERT.BAS < prev    next >
BASIC Source File  |  1985-09-18  |  46KB  |  1,355 lines

  1. 2    REM  HYDRAULICS BY WALLY MARUSENKO
  2. 10    DIM CX(11,6 )  ,A,A5,A6,A7,A8,A9,B,B1,B2,B3,C,C8,D,D0,D6,D7,D8,D9,E,E8,E9,ET,F0
  3. 20    DIM G9,H,H0,H1,H6,H7,H8,H9,I0,I7,I8,I9,J,J9,K,L,M,M0,M5,M6,M7,N,N0,O,O0,O9
  4. 30    DIM P,P1,P2,P4,P5,P6,P7,P8,P9,Q,R1,R2,R8,R9,RAD,S,S0,S1,T0,T1,T3,T4,T5,T6,T8
  5. 40    DIM T9,V,V1,V8,V9,W,W0,W1,X,X0,X1,X8,X9,Y,Y8,Y9,Z,O$(6)
  6. 50   FORMAT1$="     OPTION=#####     DISCHARGE=#######.##  CFS     SLOPE=###.#####"
  7. 60   FORMAT2$="          0.925 _* RISE =###.##"
  8. 70   FORMAT3$="          #####.##  #####.##                        #####.### ##.## ##.## ##.###"
  9. 80   FORMAT4$="          #####.##  #####.## ######.##- #######.##-  ####.### ##.## ##.## ##.###"
  10. 90   FORMAT5$="          CRITICAL DEPTH=#####.## FT       VELOCITY= ######.##  FT/SEC"
  11. 100  FORMAT6$="          WETTED PER=    #####.##  FT      WATER WIDTH=####.## FT"
  12. 110  FORMAT7$="          MANNING'S 'N'= #####.###"
  13. 120  FORMAT8$="          NORMAL DEPTH=  #####.##  FT      VELOCITY= ######.##  FT/SEC"
  14. 130  FORMAT9$="          WETTED PER=    #####.##  FT      WATER WIDTH=####.##  FT"
  15. 140  FORMAT10$="     LENGTH OF CULVERT         =##### FEET"
  16. 150  FORMAT11$="     APPROACH VELOCITY          =####.## FT/SEC"
  17. 160  FORMAT12$="     FULL FLOW VELOCITY         =####.## FT/SEC"
  18. 170  FORMAT13$="     (DC+D)/2                   =####.## FEET"
  19. 180  FORMAT14$="     INPUT VALUE (DC+D)/2 OR TW =####.## FEET"
  20. 190  FORMAT15$="     OUTLET CONTROL HW FOR FULL FLOW           =####.## FEET"
  21. 200  FORMAT16$="     FLOW DEPTH AT INLET        =####.## FEET"
  22. 210  FORMAT17$="     INLET VELOCITY             =####.## FT/SEC"
  23. 220  FORMAT18$="     INLET LOSS COEFFICIENT (KE)=####.####"
  24. 230  FORMAT19$="     OUTLET CONTROL HW FOR PARTIAL FLOW         =####.## FEET"
  25. 240  FORMAT20$="     INLET CONTROL HW-PARTIALLY SUBMERGED      ####.## FEET"
  26. 250  FORMAT21$="     INLET CONTROL HW-UNSUBMERGED              ####.## FEET"
  27. 260  FORMAT22$="     INLET CONTROL HW-SUBMERGED                ####.## FEET"
  28. 270  FORMAT23$="          TOTAL AREA=######.##  SQ FT      TOTAL PERIMETER=######.##  FT"
  29. 280  FORMAT24$="          SPAN       =#### FEET ### INCHES"
  30. 290  FORMAT25$="          RISE   = ###  FEET ###  INCHES"
  31. 300  FORMAT26$="          TOP RADIUS =#### FEET ### INCHES"
  32. 310  FORMAT27$="          SIDE RADIUS=#### FEET ### INCHES"
  33. 320  FORMAT28$="          SPAN=   #####.####  FT      RISE=    #####.####  FT"
  34. 330  FORMAT29$="          TOP RAD=#####.####  FT      SIDE RAD=#####.####  FT"
  35. 340  FORMAT30$="          TOP RISE   =#### FEET ### INCHES"
  36. 350  FORMAT31$="          TOTAL RISE =#### FEET ### INCHES"
  37. 360  FORMAT32$="          BOTTOM RISE=#### FEET ### INCHES"
  38. 370  FORMAT33$="          RADIUS RT  =####  FEET ###  INCHES"
  39. 380  FORMAT34$="          RADIUS RC  =####  FEET ###  INCHES"
  40. 390  FORMAT35$="          RADIUS RS  =####  FEET ###  INCHES"
  41. 400  FORMAT36$="          DIAMETER =###.## FEET"
  42. 410  FORMFEED$=CHR$(12)
  43. 420  PI=3.14159
  44. 430  DEF FNCOMM(ARG)=65535!-ARG
  45. 440  DEF FNNCOMP(RAD)=N+(1-SGN(ABS(N)))*.0336/(RAD^.07)
  46. 450  DEF FNOMOD6(O)=O-6*INT((O-1)/6)
  47. 470  IF O>6 THEN GOSUB 2890 ELSE GOSUB 2900
  48. 480 PRINT
  49. 490 PRINT
  50. 500  INPUT "      ENTER OPTION #   ";U
  51. 510 IF U>6 THEN 500
  52. 520  PRINT C1LEAR$
  53. 530  ON ERROR GOTO 55000
  54. 540  GOSUB 560
  55. 550  GOTO 690
  56. 560  CLOSE #1:CLOSE #2:INPUT "DO YOU WANT PRINTOUT ON   (SCREEN=0  PRINTER=1  BOTH=2)  ",Q9
  57. 562  IF Q9<>0 AND Q9<>1 AND Q9<>2 THEN 170
  58. 565 NA$="scrn:":IF Q9=1 THEN NA$="lpt1:":OPEN "O",#1,NA$:ELSE OPEN "O",#1,NA$
  59. 567  IF Q9=2 THEN OPEN "O",#2,"LPT1:"
  60. 570  REM PRINT #1,FORMFEED$
  61. 575  REM IF Q9=2 THEN PRINT #2,FORMFEED$
  62. 580  PRINT #1," "
  63. 585  IF Q9=2 THEN PRINT #2," "
  64. 590  PRINT #1,"     #################### SUPER SPAN PROGRAM ####################"
  65. 595  IF Q9=2 THEN PRINT #2,"     #################### SUPER SPAN PROGRAM ####################"
  66. 600  PRINT #1," "
  67. 605  IF Q9=2 THEN PRINT #2," "
  68. 610  PRINT #1,TAB(17) O$(U)
  69. 615  IF Q9=2 THEN PRINT #2,TAB(17) O$(U)
  70. 620  PRINT #1," "
  71. 625  IF Q9=2 THEN PRINT #2," "
  72. 630  PRINT #1," "
  73. 635  IF Q9=2 THEN PRINT #2," "
  74. 650  PRINT #1,"          RUN  DATE  ";DATE$
  75. 655  IF Q9=2 THEN PRINT #2,"          RUN  DATE  ";DATE$
  76. 660  PRINT #1," "
  77. 665  IF Q9=2 THEN PRINT #2," "
  78. 680  RETURN
  79. 690  IF NA$="lpt1:" THEN PRINT TAB(17) O$(U)
  80. 720  PRINT
  81. 730  REM ** REVISED TO INCLUDE ALPHA=1.16 IN LINES 1420 AND  2280. 8/18/78
  82. 732 REM **REVISED TO INCLUDE ALPHA=1.0 FOR CONCRETE ROUND PIPE 6-26-85
  83. 740  REM ** REVISED SO 1" IS NO LONGER ADDED TO RADII 9/29/78
  84. 750  R9=360/(2*PI)
  85. 760  I9=0
  86. 770  K=0
  87. 780  I7=0
  88. 790  PRINT #1," "
  89. 795  IF Q9=2 THEN PRINT #2," "
  90. 800  REM O=1 IS FOR HORIZONTAL ELLIPSE OPTION
  91. 810  O=U
  92. 820  PRINT "ENTER DISCHARGE";
  93. 830  INPUT Q
  94. 840  PRINT "ENTER SLOPE";
  95. 850  INPUT S
  96. 860  PRINT #1,USING FORMAT1$;FNOMOD6(O),Q,S
  97. 865  IF Q9=2 THEN PRINT #2,USING FORMAT1$;FNOMOD6(O),Q,S
  98. 880  M=0
  99. 890  PRINT "ENTER DEPTH OF MATERIAL";
  100. 900  INPUT M
  101. 910  PRINT "ENTER ";
  102. 920  IF M=0 AND O<>2 AND O<>3 AND O<>7 AND O<>8 THEN 970
  103. 930  PRINT "COMPOSITE MANNING'S 'N'";
  104. 940  INPUT N
  105. 950  IF N<>0 THEN 1030
  106. 960  GOTO 910
  107. 970  PRINT "MANNING'S N OR 0";
  108. 980  INPUT N
  109. 990  IF N<>0 THEN 1020
  110. 1000  PRINT #1,TAB(6);"DEPTH OF MATERIAL =";M
  111. 1005  IF Q9=2 THEN PRINT #2,TAB(6);"DEPTH OF MATERIAL =";M
  112. 1010  GOTO 1070
  113. 1020  IF M=0 AND O<>2 AND O<>3 AND O<>7 AND O<>8 THEN 1050
  114. 1030  PRINT #1,TAB(6);"COMPOSITE ";
  115. 1035  IF Q9=2 THEN PRINT #2,TAB(6);"COMPOSITE ";
  116. 1040  GOTO 1060
  117. 1050  PRINT #1,"     ";
  118. 1055  IF Q9=2 THEN PRINT #2,"     ";
  119. 1060  PRINT #1,"MANNING'S  'N'=";N, "DEPTH OF MATERIAL =";M
  120. 1065  IF Q9=2 THEN PRINT #2,"MANNING'S  'N'=";N, "DEPTH OF MATERIAL =";M
  121. 1080  PRINT "IS DATA CORRECT  YES=0  NO=1";
  122. 1090  INPUT T0
  123. 1100  IF T0=1 THEN 820
  124. 1110 IF O>6 THEN 1150
  125. 1130 ON U GOSUB 6090,7250,8200,9370,10410,10410
  126. 1140 GOTO 1160
  127. 1150 ON U GOSUB 6500,7570,8450,10120,10530,10530
  128. 1160 J9=0
  129. 1170 IF O<>3 THEN 1200
  130. 1180 X0=1
  131. 1190 ON U GOSUB 5540,6740,7730,8650,10160,10160
  132. 1200 IF FNOMOD6(O)<>2 THEN 1220
  133. 1210 M=M+M0
  134. 1220 D6=H-M
  135. 1230 PRINT #1,USING FORMAT2$;.9250001*D6
  136. 1235 IF Q9=2 THEN PRINT #2,USING FORMAT2$;.9250001*D6
  137. 1240 PRINT #1," "
  138. 1245 IF Q9=2 THEN PRINT #2," "
  139. 1250 IF M=0 THEN 1360
  140. 1260 IF FNOMOD6(O)<>2 THEN 1280
  141. 1270 IF M=M0 THEN 1300
  142. 1280 PRINT #1,"     NOTE: DEPTHS ARE ABOVE TOP OF BURIED MATERIAL"
  143. 1285 IF Q9=2 THEN PRINT #2,"     NOTE: DEPTHS ARE ABOVE TOP OF BURIED MATERIAL"
  144. 1290 PRINT #1," "
  145. 1295 IF Q9=2 THEN PRINT #2," "
  146. 1300 X0=M
  147. 1310 ON U GOSUB 5540,6740,7730,8650,10160,10160
  148. 1320 M5=A8
  149. 1330 M6=P8
  150. 1340 M7=C8
  151. 1350 O9=A9-M5
  152. 1360 I0=3
  153. 1370 IF M=0 THEN 1400
  154. 1380 X0=M+.1
  155. 1390 GOTO 1410
  156. 1400 X0=.1
  157. 1410 IF J9=1 THEN 1440
  158. 1411 IF FNOMOD6(O)>5 THEN 1412 ELSE 1420
  159. 1412 T8=1.05*Q*Q/32.2
  160. 1413 GOTO 1430
  161. 1420 T8=1.16*Q*Q/32.2
  162. 1430 GOTO 1450
  163. 1440 T8=Q/(1.49*SQR(S))
  164. 1450 ON U GOSUB 5540,6740,7730,8650,10160,10160
  165. 1460 IF M<>0 THEN 1480
  166. 1470 O9=A9
  167. 1480 IF J9=1 THEN 1530
  168. 1490 IF M=0 THEN 1510
  169. 1500 A8=A8-M5
  170. 1510 T9=A8^3/C8
  171. 1520 GOTO 1580
  172. 1530 IF M=0 THEN 1560
  173. 1540 A8=A8-M5
  174. 1550 P8=P8-M6+M7
  175. 1560 R8=A8/P8
  176. 1570 T9=A8*R8^.6667/FNNCOMP(R8)
  177. 1580 IF I0<.001 THEN 3100
  178. 1590 IF T9<T8 THEN 1640
  179. 1600 X0=X0-I0
  180. 1610 I0=.2*I0
  181. 1620 X0=X0+I0
  182. 1630 GOTO 1650
  183. 1640 X0=X0+I0
  184. 1650 IF X0 >= H THEN 1600
  185. 1660 IF J9=0 THEN 1450
  186. 1670 IF X0<(.9250001*D6+M) THEN 1450
  187. 1680 IF I0>.05 THEN 1450
  188. 1690 X0=H
  189. 1700 IF M=0 THEN 1740
  190. 1710 A8=A9-M5
  191. 1720 P8=P9-M6+M7
  192. 1730 GOTO 1760
  193. 1740 A8=A9
  194. 1750 P8=P9
  195. 1760 C8=0
  196. 1770 GOTO 3220
  197. 1780 PRINT "NEED WATER PROFILE? YES=0 NO=1";
  198. 1790 INPUT T0
  199. 1800 IF T0>0 THEN 2820
  200. 1801 IF T0=0 THEN 1810
  201. 1806 PRINT #1,USING FORMAT5$;Y8,V8
  202. 1807 IF Q9=2 THEN PRINT #2,USING FORMAT5$;Y8,V8
  203. 1808 PRINT #1,USING FORMAT8$;Y9,V9
  204. 1809 IF Q9=2 THEN PRINT #2,USING FORMAT8$;Y9,V9
  205. 1810 PRINT "ENTER INITIAL DEPTH OVER FLOWLN";
  206. 1820 INPUT D8
  207. 1830 IF D8 <= .9250001*D6 THEN 1860
  208. 1840 PRINT "MUST BE < 0.925 * RISE"
  209. 1850 GOTO 1806
  210. 1860 PRINT "ENTER FINAL DEPTH OVER FLOWLINE";
  211. 1870 INPUT D9
  212. 1880 PRINT "ENTER INCREMENT";
  213. 1890 INPUT D7
  214. 1900 PRINT #1," "
  215. 1905 IF Q9=2 THEN PRINT #2," "
  216. 1910 PRINT #1,TAB(6);"INITIAL DEPTH= ";D8;"FINAL DEPTH= ";D9;"INCREMENT= ";D7
  217. 1915 IF Q9=2 THEN PRINT #2,TAB(6);"INITIAL DEPTH= ";D8;"FINAL DEPTH= ";D9;"INCREMENT= ";D7
  218. 1920 PRINT #1," "
  219. 1925 IF Q9=2 THEN PRINT #2," "
  220. 1930 PRINT "IS DATA CORRECT  YES=0  NO=1 ";
  221. 1940 INPUT T0
  222. 1950 IF T0<1 THEN 1970
  223. 1960 GOTO 1806
  224. 1970 L=0
  225. 1980 IF ABS(D8-Y8)>5.000001E-03 THEN 2010
  226. 1990 D8=Y8
  227. 2000 GOTO 2020
  228. 2010 IF ABS(D8-Y9)<5.000001E-03 THEN 2540
  229. 2020 IF FNOMOD6(O)<>2 THEN 2050
  230. 2030 IF D8<H-M0 THEN 2090
  231. 2040 GOTO 2060
  232. 2050 IF D8<H THEN 2090
  233. 2060 PRINT #1,"INITIAL DEPTH EXCEEDS RISE  -  TRY AGAIN"
  234. 2065 IF Q9=2 THEN PRINT #2,"INITIAL DEPTH EXCEEDS RISE  -  TRY AGAIN"
  235. 2070 PRINT #1," "
  236. 2075 IF Q9=2 THEN PRINT #2," "
  237. 2080 GOTO 1806
  238. 2090 PRINT #1,"          DEPTH-FT   VELOCITY   DELTA X   SUM OF X'S-FT   HYD  WET  WAT    'N'"
  239. 2095 IF Q9=2 THEN PRINT #2,"          DEPTH-FT   VELOCITY   DELTA X   SUM OF X'S-FT   HYD  WET  WAT    'N'"
  240. 2100 PRINT #1,TAB(14);"(CONTROL IS: NEG=DOWNSTREAM; POS=UPSTREAM)   RAD  PER  SURF"
  241. 2105 IF Q9=2 THEN PRINT #2,TAB(14);"(CONTROL IS: NEG=DOWNSTREAM; POS=UPSTREAM)   RAD  PER  SURF"
  242. 2110 X8=0
  243. 2120 X0=D8
  244. 2130 IF D8>D9 THEN 2160
  245. 2140 D7=ABS(D7)
  246. 2150 GOTO 2170
  247. 2160 D7=-ABS(D7)
  248. 2170 L=L+1
  249. 2180 IF M=0 THEN 2200
  250. 2190 X0=X0+M
  251. 2200 ON U GOSUB 5540,6740,7730,8650,10160,10160
  252. 2210 IF M=0 THEN 2240
  253. 2220 A8=A8-M5
  254. 2230 P8=P8+M7-M6
  255. 2240 R8=(A8/P8)^1.3333
  256. 2250 V1=Q/A8
  257. 2251 IF FNOMOD6(O)>5 THEN 2282
  258. 2260 IF M=0 THEN 2280
  259. 2261 X0=X0-M
  260. 2280 E9=X0+1.16*V1*V1/64.4
  261. 2281 GOTO 2290
  262. 2282 IF M=0 THEN 2284
  263. 2283 X0=X0-M
  264. 2284 E9=X0+1.05*V1*V1/64.4
  265. 2290 S1=Q^2*(FNNCOMP(A8/P8))^2/(2.21*R8*A8^2)
  266. 2300 IF L<>1 THEN 2330
  267. 2310 PRINT #1,USING FORMAT3$;X0,V1,A8/P8,P8,C8,FNNCOMP(A8/P8)
  268. 2315 IF Q9=2 THEN PRINT #2,USING FORMAT3$;X0,V1,A8/P8,P8,C8,FNNCOMP(A8/P8)
  269. 2320 GOTO 2370
  270. 2330 X9=(E9-E8)/(S-((S0+S1)/2))
  271. 2340 X8=X8+X9
  272. 2350 T0=A8/P8
  273. 2360 PRINT #1,USING FORMAT4$;X0,V1,X9,X8,T0,P8,C8,FNNCOMP(A8/P8)
  274. 2365 IF Q9=2 THEN PRINT #2,USING FORMAT4$;X0,V1,X9,X8,T0,P8,C8,FNNCOMP(A8/P8)
  275. 2370 E8=E9
  276. 2380 S0=S1
  277. 2390 X0=X0+D7
  278. 2400 IF D7<0 THEN 2460
  279. 2410 IF X0<.9250001*D6 THEN 2440
  280. 2420 PRINT #1,TAB(10);"DEPTH EXCEEDS 0.925 * RISE THEREFORE FULL FLOW COND. EXISTS"
  281. 2425 IF Q9=2 THEN PRINT #2,TAB(10);"DEPTH EXCEEDS 0.925 * RISE THEREFORE FULL FLOW COND. EXISTS"
  282. 2430 GOTO 2810
  283. 2440 IF X0>D9 THEN 2810
  284. 2450 GOTO 2480
  285. 2460 IF X0<.05 THEN 2810
  286. 2470 IF X0<D9 THEN 2810
  287. 2480 IF Y8>Y9 THEN 2670
  288. 2490 IF D8>Y9 AND D7<0 THEN 2580
  289. 2500 IF D8>Y9 AND D7>0 THEN 2540
  290. 2510 IF D8<Y8 AND D7>0 THEN 2610
  291. 2520 IF D8<Y8 AND D7<0 THEN 2540
  292. 2530 IF D8 >= Y8 AND D7>0 THEN 2640
  293. 2540 PRINT #1,TAB(6);"+++IMPOSSIBLE PROFILE --- TRY AGAIN"
  294. 2545 IF Q9=2 THEN PRINT #2,TAB(6);"+++IMPOSSIBLE PROFILE --- TRY AGAIN"
  295. 2550 PRINT #1," "
  296. 2555 IF Q9=2 THEN PRINT #2," "
  297. 2560 PRINT #1," "
  298. 2565 IF Q9=2 THEN PRINT #2," "
  299. 2570 GOTO 1806
  300. 2580 IF X0 >= Y9 THEN 2170
  301. 2590 PRINT #1,TAB(10);"BACKWATER CURVE (M-1) GOES BELOW NORMAL DEPTH"
  302. 2595 IF Q9=2 THEN PRINT #2,TAB(10);"BACKWATER CURVE (M-1) GOES BELOW NORMAL DEPTH"
  303. 2600 GOTO 2810
  304. 2610 IF X0 <= Y8 THEN 2170
  305. 2620 PRINT #1,TAB(10);"SUPER-CRITICAL FLOW (M-3) EXCEEDS CRITICAL DEPTH"
  306. 2625 IF Q9=2 THEN PRINT #2,TAB(10);"SUPER-CRITICAL FLOW (M-3) EXCEEDS CRITICAL DEPTH"
  307. 2630 GOTO 2810
  308. 2640 IF X0 <= Y9 THEN 2170
  309. 2650 PRINT #1,TAB(10);"DROWDAWN CURVE (M-2) EXCEEDS NORMAL DEPTH"
  310. 2655 IF Q9=2 THEN PRINT #2,TAB(10);"DROWDAWN CURVE (M-2) EXCEEDS NORMAL DEPTH"
  311. 2660 GOTO 2810
  312. 2670 IF D8>Y8 AND D7<0 THEN 2730
  313. 2680 IF D8>Y8 AND D7>0 THEN 2540
  314. 2690 IF D8<Y9 AND D7>0 THEN 2760
  315. 2700 IF D8<Y9 AND D7<0 THEN 2540
  316. 2710 IF D8>Y9 AND D7<0 THEN 2790
  317. 2720 GOTO 2540
  318. 2730 IF X0 >= Y8 THEN 2170
  319. 2740 PRINT #1,TAB(10);"SUB-CRITICAL FLOW (S-1) GOES BELOW CRITICAL DEPTH"
  320. 2745 IF Q9=2 THEN PRINT #2,TAB(10);"SUB-CRITICAL FLOW (S-1) GOES BELOW CRITICAL DEPTH"
  321. 2750 GOTO 2810
  322. 2760 IF X0 <= Y9 THEN 2170
  323. 2770 PRINT #1,TAB(10);"SUPER-CRITICAL FLOW (S-3) EXCEEDS NORMAL DEPTH"
  324. 2775 IF Q9=2 THEN PRINT #2,TAB(10);"SUPER-CRITICAL FLOW (S-3) EXCEEDS NORMAL DEPTH"
  325. 2780 GOTO 2810
  326. 2790 IF X0 >= Y9 THEN 2170
  327. 2800 PRINT #1,TAB(10);"SUPER-CRITICAL FLOW (S-2) GOES BELOW NORMAL DEPTH"
  328. 2805 IF Q9=2 THEN PRINT #2,TAB(10);"SUPER-CRITICAL FLOW (S-2) GOES BELOW NORMAL DEPTH"
  329. 2806 PRINT
  330. 2807 GOT0 2810
  331. 2810 PRINT #1,USING FORMAT8$;Y9,V9
  332. 2811 IF Q9=2 THEN PRINT #2,USING FORMAT8$;Y9,V9
  333. 2813 PRINT "ENTER SELECTED FLOW DEPTH AT THE INLET";
  334. 2814 INPUT X0
  335. 2815 PRINT "ENTER SELECTED VELOCITY AT THE INLET";
  336. 2816 INPUT V1
  337. 2817 PRINT "SELECTED DEPTH AND VELOCITY CORRECT ? YES=0  N0=1";
  338. 2818 INPUT T0
  339. 2819 IF T0=1 THEN 2813 ELSE 2820
  340. 2820 PRINT
  341. 2830 PRINT "NEW?:  SIZE=1  OPTION=2  HYDRAULICS=3  PROFILE=4  HEAD WATER=5  DONE=6";
  342. 2831 I=0
  343. 2840 INPUT T0
  344. 2850 IF O>6 THEN 2870
  345. 2860 O=O+6
  346. 2870 IF T0<>2 THEN 2990
  347. 2880 GOTO 470
  348. 2890 M=M-M0
  349. 2900 FOR T=1 TO 6
  350. 2910  O$(1)= "    ***** HORIZONTAL ELLIPSE *****"
  351. 2920  O$(2)= "    *****  LOW PROFILE ARCH  *****"
  352. 2930  O$(3)= "    ***** HIGH PROFILE ARCH  *****"
  353. 2940  O$(4)= "    *****     PEAR SHAPE     *****"
  354. 2950  O$(5)= "    *****   CIRCULAR SHAPE , METAL *****"
  355. 2955  O$(6)= "    ***** CIRCULAR SHAPE , CONCRETE *****"
  356. 2960 PRINT "      OPTION #";T;"=";O$(T)
  357. 2970 NEXT T
  358. 2980 RETURN
  359. 2990 IF T0<>1 AND T0<>3 AND T0<>5 THEN 3030
  360. 3000 GOSUB 560
  361. 3010 IF T0=3 THEN 3070
  362. 3020 GOSUB 5300
  363. 3030 ON T0 GOTO 3040,2900,3050,1806,3310,3090
  364. 3040 I9=0
  365. 3050 IF T0<>1 OR O<>7 THEN 3070
  366. 3060 M=M-M0
  367. 3070 ON T0 GOTO 1120,790,820
  368. 3080 GOTO 2810
  369. 3090 CHAIN "MENU":'***********************************************************
  370. 3100 IF J9=1 THEN 3220
  371. 3110 IF I7<>0 THEN 5100
  372. 3120 Y8=X0
  373. 3130 V8=Q/A8
  374. 3140 IF M=0 THEN 3160
  375. 3150 Y8=Y8-M
  376. 3160 PRINT #1,USING FORMAT5$;Y8,V8
  377. 3165 IF Q9=2 THEN PRINT #2,USING FORMAT5$;Y8,V8
  378. 3170 PRINT #1,USING FORMAT6$;P8,C8
  379. 3175 IF Q9=2 THEN PRINT #2,USING FORMAT6$;P8,C8
  380. 3180 PRINT #1,USING FORMAT7$;FNNCOMP(A8/P8)
  381. 3185 IF Q9=2 THEN PRINT #2,USING FORMAT7$;FNNCOMP(A8/P8)
  382. 3190 PRINT #1," "
  383. 3195 IF Q9=2 THEN PRINT #2," "
  384. 3200 J9=1
  385. 3210 GOTO 1360
  386. 3220 Y9=X0
  387. 3230 V9=Q/A8
  388. 3240 IF M=0 THEN 3260
  389. 3250 Y9=Y9-M
  390. 3260 PRINT #1,USING FORMAT8$;Y9,V9
  391. 3265 IF Q9=2 THEN PRINT #2,USING FORMAT8$;Y9,V9
  392. 3270 PRINT #1,USING FORMAT9$;P8,C8
  393. 3275 IF Q9=2 THEN PRINT #2,USING FORMAT9$;P8,C8
  394. 3280 PRINT #1,USING FORMAT7$;FNNCOMP(A8/P8)
  395. 3285 IF Q9=2 THEN PRINT #2,USING FORMAT7$;FNNCOMP(A8/P8)
  396. 3290 PRINT #1," "
  397. 3295 IF Q9=2 THEN PRINT #2," "
  398. 3300 GOTO 1780
  399. 3310 ON U GOSUB 6500,7570,8450,10120,10530,10530
  400. 3320 PRINT #1," "
  401. 3325 IF Q9=2 THEN PRINT #2," "
  402. 3330 PRINT #1,USING FORMAT5$;Y8,V8
  403. 3335 IF Q9=2 THEN PRINT #2,USING FORMAT5$;Y8,V8
  404. 3340 PRINT #1," "
  405. 3345 IF Q9=2 THEN PRINT #2," "
  406. 3350 PRINT #1,USING FORMAT8$;Y9,V9
  407. 3355 IF Q9=2 THEN PRINT #2,USING FORMAT8$;Y9,V9
  408. 3360 PRINT #1," "
  409. 3365 IF Q9=2 THEN PRINT #2," "
  410. 3370 PRINT #1," "
  411. 3375 IF Q9=2 THEN PRINT #2," "
  412. 3380 PRINT #1,">>>>>>>>>> HEAD WATER CALCULATIONS <<<<<<<<<<"
  413. 3385 IF Q9=2 THEN PRINT #2,">>>>>>>>>> HEAD WATER CALCULATIONS <<<<<<<<<<"
  414. 3390 PRINT #1," "
  415. 3395 IF Q9=2 THEN PRINT #2," "
  416. 3400 PRINT #1,"     ///// OUTLET CONTROL /////"
  417. 3405 IF Q9=2 THEN PRINT #2,"     ///// OUTLET CONTROL /////"
  418. 3410 PRINT #1," "
  419. 3415 IF Q9=2 THEN PRINT #2," "
  420. 3420 PRINT "FULL FLOW CONDITION  YES=0  NO=1";
  421. 3430 INPUT T0
  422. 3435 I=I+1
  423. 3440 IF T0=1 AND I=1 THEN 3731
  424. 3441 IF T0=1 AND I=2 THEN 3734
  425. 3450 PRINT "ENTER LENGTH OF CULVERT";
  426. 3460 INPUT T0
  427. 3462  PRINT #1,USING FORMAT10$;T0
  428. 3464  IF Q9=2 THEN PRINT #2,USING FORMAT10$;T0
  429. 3467 IF FNOMOD6(O)<5 THEN 3470
  430. 3468 IF FNOMOD6(O)=5 THEN 3476
  431. 3469 IF FNOMOD6(O)=6 THEN 3482
  432. 3470 PRINT "0.50=90 DEGREE HEADWALL, CORRUGATED METAL EDGE (SLIGHT BEVEL)";
  433. 3471 PRINT "0.25=90 DEGREE HEADWALL, BEVEL (0.04 D AT 45 DEGREES)";
  434. 3472 PRINT "0.25=90 DEGREE HEADWALL, BEVEL (0.083 D AT 33.7 DEGREES)";
  435. 3473 PRINT "0.70=MITERED TO EMBANKEMENT (ALL NON-RECTANGULAR SHAPES)";
  436. 3474 PRINT "0.90=PROJECTING THIN WALL, CORRUGATED METAL"
  437. 3475 GOTO 3489
  438. 3476 PRINT "0.50=90 DEGREE HEADWALL, SQUARE EDGE. ALSO APRON";
  439. 3477 PRINT "0.25=90 DEGREE HEADWALL, BEVEL (0.04 D AT 45 DEGREES)";
  440. 3478 PRINT "0.25=90 DEGREE HEADWALL, BEVEL (0.083 D AT 33.7 DEGREES)";
  441. 3479 PRINT "0.70=MITERED TO EMBANKEMENT, CIRCULAR, SQUARE EDGE";
  442. 3480 PRINT "0.90=PROJECTING THIN WALL, CORRUGATED METAL"
  443. 3481 GOTO 3489
  444. 3482 PRINT "0.50=90 DEGREE HEADWALL, SQUARE EDGE. ALSO APRON";
  445. 3483 PRINT "0.20=90 DEGREE HEADWALL, GROOVE END (0.05 * 0.07 D)";
  446. 3484 PRINT "0.25=90 DEGREE HEADWALL, BEVEL (0.04 D AT 45 DEGREES)";
  447. 3485 IF Q9=2 THEN PRINT "0.25=90 DEGREE HEADWALL, BEVEL (0.083 D AT 33.7 DEGREES)";
  448. 3486 PRINT "0.70=MITERED TO EMBANKEMENT, CIRCULAR, SQUARE EDGE";
  449. 3487 PRINT "0.90=PROJECTING THICK WALL(WALL THICKNESS=0.09 D)";
  450. 3488 PRINT "0.20=PROJECTING THICK WALL, GROOVE END (0.05 * 0.07 D)"
  451. 3489 PRINT " INLET LOSS COEFFICIENT (Ke)"
  452. 3490 INPUT K
  453. 3500 PRINT #1,USING FORMAT18$;K
  454. 3505 IF Q9=2 THEN PRINT #2,USING FORMAT18$;K
  455. 3510 V1=Q/A9
  456. 3520 O0=A9/P9
  457. 3530 IF M=0 THEN 3560
  458. 3540 V1=Q/(A9-M5)
  459. 3550 O0=(A9-M5)/(P9-M6+M7)
  460. 3560 PRINT "ENTER APPROACH VELOCITY";
  461. 3570 INPUT X0
  462. 3580 PRINT #1,USING FORMAT11$;X0
  463. 3585 IF Q9=2 THEN PRINT #2,USING FORMAT11$;X0
  464. 3590 PRINT #1,USING FORMAT12$;V1
  465. 3595 IF Q9=2 THEN PRINT #2,USING FORMAT12$;V1
  466. 3600 V1=(1+K+29*(FNNCOMP(O0))^2*T0/O0^(4/3))*V1^2/64.4
  467. 3610 PRINT #1,USING FORMAT13$;(Y8+D6)/2
  468. 3615 IF Q9=2 THEN PRINT #2,USING FORMAT13$;(Y8+D6)/2
  469. 3620 PRINT #1," "
  470. 3625 IF Q9=2 THEN PRINT #2," "
  471. 3630 PRINT
  472. 3640 PRINT USING FORMAT13$;(Y8+D6)/2
  473. 3650 PRINT
  474. 3660 PRINT "ENT. LARGER VALUE (DC+D)/2 OR TW";
  475. 3670 INPUT O0
  476. 3680 PRINT #1,USING FORMAT14$;O0
  477. 3685 IF Q9=2 THEN PRINT #2,USING FORMAT14$;O0
  478. 3690 PRINT #1," "
  479. 3695 IF Q9=2 THEN PRINT #2," "
  480. 3700 PRINT #1,USING FORMAT15$;V1+O0-S*T0-X0*X0/64.4
  481. 3705 IF Q9=2 THEN PRINT #2,USING FORMAT15$;V1+O0-S*T0-X0*X0/64.4
  482. 3710 PRINT #1," "
  483. 3715 IF Q9=2 THEN PRINT #2," "
  484. 3720 PRINT #1," "
  485. 3725 IF Q9=2 THEN PRINT #2," "
  486. 3730 GOTO 3970
  487. 3731 PRINT "SELECTED FLOW DEPTH AT THE INLET"; X0
  488. 3733 PRINT "SELECTED VELOCITY AT THE INLET"; V1
  489. 3734 D0=X0
  490. 3735 V=V1
  491. 3810 PRINT "FLOW DEPTH AT INLET";
  492. 3811 INPUT D0
  493. 3820 PRINT "INLET VELOCITY";
  494. 3821 INPUT V
  495. 3835 IF Q9=2 THEN PRINT #2,USING FORMAT17$;V
  496. 3838 IF FNOMOD6(O)<5 THEN 3841
  497. 3839 IF FNOMOD6(O)=5 THEN 3847
  498. 3840 IF FNOMOD6(O)=6 THEN 3853
  499. 3841 PRINT "0.50=90 DEGREE HEADWALL, CORRUGATED METAL EDGE (SLIGHT BEVEL)";
  500. 3842 PRINT "0.25=90 DEGREE HEADWALL, BEVEL (0.04 D AT 45 DEGREES)";
  501. 3843 PRINT "0.25=90 DEGREE HEADWALL, BEVEL (0.083 D AT 45 DEGREES)";
  502. 3844 PRINT "0.70=MITERED TO EMBANKEMENT (ALL NON-RECTANGULAR SHAPES)";
  503. 3845 PRINT  "0.90=PROJECTING THIN WALL, CORRUGATED METAL"
  504. 3846 GOTO 3860
  505. 3847 PRINT "0.50=90 DEGREE HEADWALL, SQUARE EDGE. ALSO APRON";
  506. 3848 PRINT "0.25=90 DEGREE HEADWALL, BEVEL (0.04 D AT 45 DEGREES)";
  507. 3849 PRINT "0.25=90 DEGREE HEADWALL, BEVEL (0.083 D AT 33.7 DEGREES)";
  508. 3850 PRINT "0.70=MITERED TO EMBANKEMENT, CIRCULAR, SQUARE EDGE"
  509. 3851 PRINT "0.90=PROJECTING THIN WALL, CORRUGATED METAL"
  510. 3852 GOTO 3860
  511. 3853 PRINT "0.50=90 DEGREE HEADWALL, SQUARE EDGE. ALSO APRON";
  512. 3854 PRINT "0.20=90 DEGREE HEADWALL, GROOVE END (0.05 * 0.07 D)";
  513. 3855 PRINT "0.25=90 DEGREE HEADWALL, BEVEL (0.04 D AT 45 DEGREES)";
  514. 3856 PRINT "0.25=90 DEGREE HEADWALL, BEVEL (0.083 D AT 33.7 DEGREES)";
  515. 3857 PRINT "0.70=MITERED TO EMBANKEMENT, CIRCULAR, SQUARE EDGE";
  516. 3858 PRINT "0.90=PROJECTING THICK WALL(WALL THICKNESS=0.09 D)";
  517. 3859 PRINT "0.20=PROJECTING THICK WALL, GROOVE END (0.05 * 0.07 D)"
  518. 3860 PRINT " INLET LOSS COEFFICIENT (Ke)"
  519. 3861 INPUT K
  520. 3870 PRINT #1," "
  521. 3875 IF Q9=2 THEN PRINT #2," "
  522. 3880 PRINT "ENTER APPROACH VELOCITY";
  523. 3890 INPUT X0
  524. 3900 PRINT #1," "
  525. 3905 IF Q9=2 THEN PRINT #2," "
  526. 3910 PRINT "IS DATA CORRECT?  YES=0  NO=1";
  527. 3920 INPUT O0
  528. 3930 IF O0=1 THEN 3500
  529. 3940 PRINT #1,USING FORMAT19$;D0+(1+K)*(V^2)/64.4-X0*X0/64.4
  530. 3945 IF Q9=2 THEN PRINT #2,USING FORMAT19$;D0+(1+K)*(V^2)/64.4-X0*X0/64.4
  531. 3950 PRINT #1," "
  532. 3955 IF Q9=2 THEN PRINT #2," "
  533. 3960 PRINT #1," "
  534. 3965 IF Q9=2 THEN PRINT #2," "
  535. 3970 PRINT #1,"     ///// INLET CONTROL /////"
  536. 3975 IF Q9=2 THEN PRINT #2,"     ///// INLET CONTROL /////"
  537. 3980 PRINT #1," "
  538. 3985 IF Q9=2 THEN PRINT #2," "
  539. 3990 CX(1,1 )  =.01
  540. 4000 CX(1,2 )  =2
  541. 4010 CX(1,3 )  =3.3
  542. 4020 CX(1,4 )  =.0398
  543. 4030 CX(1,5 )  =.67
  544. 4040 CX(1,6 )  =3.4
  545. 4050 CX(2,1 )  =.0083
  546. 4060 CX(2,2 )  =2
  547. 4070 CX(2,3 )  =3.3
  548. 4080 CX(2,4 )  =.0379
  549. 4090 CX(2,5 )  =.69
  550. 4100 CX(2,6 )  =3.8
  551. 4110 CX(3,1 )  =.0018
  552. 4120 CX(3,2 )  =2.5
  553. 4130 CX(3,3 )  =3.3
  554. 4140 CX(3,4 )  =.0292
  555. 4150 CX(3,5 )  =.74
  556. 4160 CX(3,6 )  =4.2
  557. 4170 CX(4,1 )  =.0018
  558. 4180 CX(4,2 )  =2.5
  559. 4190 CX(4,3 )  =3.3
  560. 4200 CX(4,4 )  =.03
  561. 4210 CX(4,5 )  =.74
  562. 4220 CX(4,6 )  =4.2
  563. 4230 CX(5,1 )  =.0018
  564. 4240 CX(5,2 )  =2.5
  565. 4250 CX(5,3 )  =3.3
  566. 4260 CX(5,4 )  =.243
  567. 4270 CX(5,5 )  =.83
  568. 4280 CX(5,6 )  =4.2
  569. 4290 CX(6,1 )  =.021
  570. 4300 CX(6,2 )  =1.33
  571. 4310 CX(6,3 )  =3
  572. 4320 CX(6,4 )  =.0463
  573. 4330 CX(6,5 )  =.75
  574. 4340 CX(6,6 )  =5.1
  575. 4350 CX(7,1 )  =.03
  576. 4360 CX(7,2 )  =1
  577. 4370 CX(7,3 )  =3
  578. 4380 CX(7,4 )  =.0463
  579. 4390 CX(7,5 )  =.75
  580. 4400 CX(7,6 )  =5.1
  581. 4410 CX(8,1 )  =.0145
  582. 4420 CX(8,2 )  =1.75
  583. 4430 CX(8,3 )  =3.3
  584. 4440 CX(8,4 )  =.0419
  585. 4450 CX(8,5 )  =.64
  586. 4460 CX(8,6 )  =4.5
  587. 4470 CX(9,1 )  =.0045
  588. 4480 CX(9,2 )  =2
  589. 4490 CX(9,3 )  =3.3
  590. 4500 CX(9,4 )  =.0317
  591. 4510 CX(9,5 )  =.69
  592. 4520 CX(9,6 )  =3.3
  593. 4530 CX(10,1 )  =.034
  594. 4540 CX(10,2 )  =1.5
  595. 4550 CX(10,3 )  =3.3
  596. 4560 CX(10,4 )  =.0553
  597. 4570 CX(10,5 )  =.54
  598. 4580 CX(10,6 )  =5
  599. 4590 CX(11,1 )  =.034
  600. 4600 CX(11,2 )  =1.5
  601. 4610 CX(11,3 )  =3.3
  602. 4620 CX(11,4 )  =.0496
  603. 4630 CX(11,5 )  =.57
  604. 4640 CX(11,6 )  =5
  605. 4641 IF FNOMOD6(O)<5 AND K=.25 GOTO 4664
  606. 4642 IF FNOMOD6(O)<5 AND K=.5 GOTO 4659
  607. 4643 IF FNOMOD6(O)<5 AND K=.7 GOTO 4669
  608. 4644 IF FNOMOD6(O)<5 AND K=.9 GOTO 4674
  609. 4647 IF FNOMOD6(O)=5 AND K=.25 GOTO 4664
  610. 4648 IF FNOMOD6(O)=5 AND K=.5 GOTO 4657
  611. 4649 IF FNOMOD6(O)=5 AND K=.7 GOTO 4667
  612. 4650 IF FNOMOD6(O)=5 AND K=.9 GOTO 4674
  613. 4651 IF FNOMOD6(O)=6 AND K=.2 GOTO 4661
  614. 4652 IF FNOMOD6(O)=6 AND K=.25 GOTO 4664
  615. 4653 IF FNOMOD6(O)=6 AND K=.5 GOTO 4657
  616. 4654 IF FNOMOD6(O)=6 AND K=.7 GOTO 4667
  617. 4655 IF FNOMOD6(O)=6 AND K=.9 GOTO 4674
  618. 4657 PRINT "1=90 DEGREE HEADWALL SQUARE EDGE , ALSO APRON."
  619. 4658 GOTO 4676
  620. 4659 PRINT " 2=90 DEGREE HEADWALL CORRUGATED METAL EDGE (SLIGHT BEVEL)"
  621. 4660 GOTO 4676
  622. 4661 PRINT "3.0=90 DEGREE HEADWALL, GROOVE END (0.05 * 0.07 D)"
  623. 4662 PRINT "9.0=PROJECTING THICK WALL, GROOVE END (0.05 * 0.07 D)"
  624. 4663 GOTO 4676
  625. 4664 PRINT "4.0=90 DEGREE HEADWALL, BEVEL (0.04 D AT 45 DEGREES)"
  626. 4665 PRINT "5.0=90 DEGREE HEADWALL, BEVEL (0.083 D AT 33.7 DEGREES)"
  627. 4666 GOTO 4676
  628. 4667 PRINT "6=0=MITERED TO EMBANKEMENT, CIRCULAR, SQUARE EDGE"
  629. 4668 GOTO 4676
  630. 4669 PRINT "7.0=MITERED TO EMBANKEMENT (ALL NON-RECTANGULAR SHAPES)"
  631. 4670 GOTO 4676
  632. 4671 PRINT "8.0=PROJECTING THICK WALL(WALL THICKNESS=0.09 D)"
  633. 4672 GOTO 4676
  634. 4674 PRINT "10.0=PROJECTING THIN WALL, CORRUGATED METAL 1/2 INCH CORRUGATIONS"
  635. 4675 PRINT "11.0=PROJECTING THIN WALL, CORRUGATED METAL 2 INCH CORRUGATIONS"
  636. 4676 PRINT "INLET TYPE "
  637. 4677 INPUT I8
  638. 4680 IF I8>5 THEN 4810
  639. 4690 PRINT #1,TAB(6);"90 DEGREE HEADWALL"
  640. 4695 IF Q9=2 THEN PRINT #2,TAB(6);"90 DEGREE HEADWALL"
  641. 4700 ON I8 GOTO 4710,4730,4750,4770,4790
  642. 4710 PRINT #1,TAB(6);"SQUARE EDGE , ALSO APRON"
  643. 4715 IF Q9=2 THEN PRINT #2,TAB(6);"SQUARE EDGE , ALSO APRON"
  644. 4720 GOTO 5000
  645. 4730 PRINT #1,TAB(6);"CORRUGATED METAL EDGE (SLIGHT BEVEL)"
  646. 4735 IF Q9=2 THEN PRINT #2,TAB(6);"CORRUGATED METAL EDGE (SLIGHT BEVEL)"
  647. 4740 GOTO 5000
  648. 4750 PRINT #1,TAB(6);"GROOVE END (0.05 * 0.07 D)"
  649. 4755 IF Q9=2 THEN PRINT #2,TAB(6);"GROOVE END (0.05 * 0.07 D)"
  650. 4760 GOTO 5000
  651. 4770 PRINT #1,TAB(6);"BEVEL (0.04 AT 45 DEGREES)"
  652. 4775 IF Q9=2 THEN PRINT #2,TAB(6);"BEVEL (0.04 AT 45 DEGREES)"
  653. 4780 GOTO 5000
  654. 4790 PRINT #1,TAB(6);"BEVEL (0.083 D AT 33.7 DEGREES)"
  655. 4795 IF Q9=2 THEN PRINT #2,TAB(6);"BEVEL (0.083 D AT 33.7 DEGREES)"
  656. 4800 GOTO 5000
  657. 4810 IF I8>7 THEN 4880
  658. 4820 PRINT #1,TAB(6);"MITERED TO EMBANKMENT"
  659. 4825 IF Q9=2 THEN PRINT #2,TAB(6);"MITERED TO EMBANKMENT"
  660. 4830 IF I8=7 THEN 4860
  661. 4840 PRINT #1,TAB(6);"CIRCULAR, SQUARE EDGE"
  662. 4845 IF Q9=2 THEN PRINT #2,TAB(6);"CIRCULAR, SQUARE EDGE"
  663. 4850 GOTO 5000
  664. 4860 PRINT #1,TAB(6);"(ALL OTHER NON-RECTANGULAR SHAPES)"
  665. 4865 IF Q9=2 THEN PRINT #2, TAB(6);"(ALL NON-RECTANGULAR SHAPES)"
  666. 4870 GOTO 5000
  667. 4880 IF I8>9 THEN 4950
  668. 4890 PRINT #1,TAB(6);"THICK WALL, PROJECTING"
  669. 4895 IF Q9=2 THEN PRINT #2,TAB(6);"THICK WALL, PROJECTING"
  670. 4900 IF I8=9 THEN 4930
  671. 4910 PRINT #1,TAB(6);"WALL THICKNESS = 0.09 D"
  672. 4915 IF Q9=2 THEN PRINT #2,TAB(6);"WALL THICKNESS = 0.09 D"
  673. 4920 GOTO 5000
  674. 4930 PRINT #1,TAB(6);"GROOVE END (0.05 * 0.07 D) ALSO BEVELS"
  675. 4935 IF Q9=2 THEN PRINT #2,TAB(6);"GROOVE END (0.05 * 0.07 D) ALSO BEVELS"
  676. 4940 GOTO 5000
  677. 4950 PRINT #1,TAB(6);"THIN WALL, PROJECTING"
  678. 4955 IF Q9=2 THEN PRINT #2,TAB(6);"THIN WALL, PROJECTING"
  679. 4960 IF I8=11 THEN 4990
  680. 4970 PRINT #1,TAB(6);"CORRUGATED METAL, 1/2 INCH CORRUGATIONS"
  681. 4975 IF Q9=2 THEN PRINT #2,TAB(6);"CORRUGATED METAL, 1/2 INCH CORRUGATIONS"
  682. 4980 GOTO 5000
  683. 4990 PRINT #1,TAB(6);"CORRUGATED METAL, 2 INCH CORRUGATINS"
  684. 4995 IF Q9=2 THEN PRINT #2,TAB(6);"CORRUGATED METAL, 2 INCH CORRUGATINS"
  685. 5000 G9=-.05*S
  686. 5010 IF I8<>6 AND I8<>7 THEN 5030
  687. 5020 G9=.7*S
  688. 5030 PRINT #1," "
  689. 5035 IF Q9=2 THEN PRINT #2," "
  690. 5040 IF Q/O9/SQR(D6) <= CX(I8,3 )   THEN 5200
  691. 5050 IF Q/O9/SQR(D6) >= CX(I8,6 )   THEN 5250
  692. 5060 I7=Q
  693. 5070 Q=CX(I8,3 )  *O9*SQR(D6)
  694. 5080 J9=0
  695. 5090 GOTO 1360
  696. 5100 H7=D6*((X0-M+Q*Q/A8/A8/64.4)/D6+CX(I8,1 )  *CX(I8,3 )  ^CX(I8,2 )  +G9)
  697. 5110 H8=D6*(CX(I8,4 )  *CX(I8,6 )  ^2+CX(I8,5 )  +G9)
  698. 5120 H6=CX(I8,6 )  *O9*SQR(D6)
  699. 5130 H9=H8-(H8-H7)*(H6-I7)/(H6-Q)
  700. 5140 PRINT #1,USING FORMAT20$;H9
  701. 5141 X0=0
  702. 5142 V1=0
  703. 5143 D0=0
  704. 5144 V=0
  705. 5145 IF Q9=2 THEN PRINT #2,USING FORMAT20$;H9
  706. 5150 PRINT #1," "
  707. 5155 IF Q9=2 THEN PRINT #2," "
  708. 5160 PRINT #1," "
  709. 5165 IF Q9=2 THEN PRINT #2," "
  710. 5170 Q=I7
  711. 5180 I7=0
  712. 5190 GOTO 2820
  713. 5200 H9=D6*((Y8+V8^2/64.4)/D6+CX(I8,1 )  *(Q/O9/SQR(D6))^CX(I8,2 )  +G9)
  714. 5210 PRINT #1,USING FORMAT21$;H9
  715. 5211 X0=0
  716. 5212 V1=0
  717. 5213 D0=0
  718. 5214 V=0
  719. 5215 IF Q9=2 THEN PRINT #2,USING FORMAT21$;H9
  720. 5220 PRINT #1," "
  721. 5225 IF Q9=2 THEN PRINT #2," "
  722. 5230 PRINT #1," "
  723. 5235 IF Q9=2 THEN PRINT #2," "
  724. 5240 GOTO 2820
  725. 5250 H9=D6*(CX(I8,4 )  *(Q/O9/SQR(D6))^2+CX(I8,5 )  +G9)
  726. 5260 PRINT #1,USING FORMAT22$;H9
  727. 5261 X0=0
  728. 5262 V1=0
  729. 5263 D0=0
  730. 5264 V=0
  731. 5265 IF Q9=2 THEN PRINT #2,USING FORMAT22$;H9
  732. 5270 PRINT #1," "
  733. 5275 IF Q9=2 THEN PRINT #2," "
  734. 5280 PRINT #1," "
  735. 5285 IF Q9=2 THEN PRINT #2," "
  736. 5290 GOTO 2820
  737. 5300 PRINT #1,USING FORMAT1$;FNOMOD6(O),Q,S
  738. 5305 IF Q9=2 THEN PRINT #2,USING FORMAT1$;FNOMOD6(O),Q,S
  739. 5310 PRINT #1," "
  740. 5315 IF Q9=2 THEN PRINT #2," "
  741. 5320 IF N<>0 OR (O<>2 AND O<>3) THEN 5360
  742. 5330 PRINT "ENTER COMPOSITE MANNING'S 'N'";
  743. 5340 INPUT N
  744. 5350 GOTO 5320
  745. 5360 IF N<>0 THEN 5430
  746. 5370 PRINT #1,TAB(6);"DEPTH OF MATERIAL =";
  747. 5375 IF Q9=2 THEN PRINT #2,TAB(6);"DEPTH OF MATERIAL =";
  748. 5380 IF FNOMOD6(O)=2 AND T0<>2 THEN 5410
  749. 5390 PRINT #1,M
  750. 5395 IF Q9=2 THEN PRINT #2,M
  751. 5400 GOTO 5520
  752. 5410 PRINT #1,M-M0
  753. 5415 IF Q9=2 THEN PRINT #2,M-M0
  754. 5420 GOTO 5520
  755. 5430 IF M=0 AND O<>2 AND O<>3 AND O<>7 AND O<>8 THEN 5460
  756. 5440 PRINT #1,TAB(6);"COMPOSITE ";
  757. 5445 IF Q9=2 THEN PRINT #2,TAB(6);"COMPOSITE ";
  758. 5450 GOTO 5470
  759. 5460 PRINT #1,"     ";
  760. 5465 IF Q9=2 THEN PRINT #2,"     ";
  761. 5470 PRINT #1,"MANNING'S "N" =";N,"DEPTH OF MATERIAL =";
  762. 5475 IF Q9=2 THEN PRINT #2,"MANNING'S "N" =";N,"DEPTH OF MATERIAL =";
  763. 5480 IF FNOMOD6(O)=2 AND T0<>2 THEN 5510
  764. 5490 PRINT #1,M
  765. 5495 IF Q9=2 THEN PRINT #2,M
  766. 5500 GOTO 5520
  767. 5510 PRINT #1,M-M0
  768. 5515 IF Q9=2 THEN PRINT #2,M-M0
  769. 5520 PRINT #1," "
  770. 5525 IF Q9=2 THEN PRINT #2," "
  771. 5530 RETURN
  772. 5540 IF I9=2 THEN 5700
  773. 5550 X=W/2-R2
  774. 5560 Y=R1-H/2
  775. 5570 A=ATN(X/Y)*R9
  776. 5580 B=(90-A)*2
  777. 5590 Z=SQR(X^2+Y^2)
  778. 5600 C=(Y*R1-Y*Z)/Z
  779. 5610 D=X*R1/Z
  780. 5620 E=H/2-C
  781. 5630 A5=.5*R1^2*(2*A/R9-SIN(2*A/R9))
  782. 5640 A9=2*A5+4*D*C+R2^2*(B/R9-SIN(B/R9))
  783. 5650 P9=4*A/R9*R1+2*B/R9*R2
  784. 5660 IF O=2 OR O=7 THEN 5690
  785. 5663 D0=0
  786. 5664 V=0
  787. 5670 PRINT #1,USING FORMAT23$;A9,P9
  788. 5675 IF Q9=2 THEN PRINT #2,USING FORMAT23$;A9,P9
  789. 5680 PRINT #1," "
  790. 5685 IF Q9=2 THEN PRINT #2," "
  791. 5690 REM  PARTIAL AREA
  792. 5700 IF X0>E THEN 5770
  793. 5710 T3=(R1-X0)/R1
  794. 5720 T4=ATN(SQR(1-T3^2)/T3)
  795. 5730 C8=2*R1*SIN(T4)
  796. 5740 P8=2*T4*R1
  797. 5750 A8=R1^2*T4-(R1-X0)*SQR(2*R1*X0-X0^2)
  798. 5760 GOTO 6060
  799. 5770 IF X0>(2*C+E) THEN 5980
  800. 5780 X1=X0-E
  801. 5790 P=X1/SIN(B/2/R9)
  802. 5800 P4=P*COS(B/2/R9)
  803. 5810 P2=R2-P
  804. 5820 B1=180-B/2
  805. 5830 T3=P2*SIN(B1/R9)/R2
  806. 5840 B2=ATN(T3/SQR(1-T3^2))*R9
  807. 5850 B3=180-B1-B2
  808. 5860 P1=R2*SIN(B3/R9)/SIN(B1/R9)
  809. 5870 P5=P1-P4
  810. 5880 A7=X1*P5
  811. 5890 T5=B3/R9
  812. 5900 T6=2*A/R9
  813. 5910 P7=R2*T5
  814. 5920 P6=R1*T6
  815. 5930 P8=P6+P7*2
  816. 5940 A6=R2^2*(T5-SIN(T5))
  817. 5950 A8=A7+A6+2*D*X1+A5
  818. 5960 C8=2*D+2*P5
  819. 5970 GOTO 6060
  820. 5980 X1=H-X0
  821. 5990 T3=(R1-X1)/R1
  822. 6000 T4=ATN(SQR(1-T3^2)/T3)
  823. 6010 P7=2*T4*R1
  824. 6020 P8=P9-P7
  825. 6030 A7=R1^2*T4-(R1-X1)*(2*R1*X1-X1^2)^.5
  826. 6040 C8=2*R1*SIN(T4)
  827. 6050 A8=A9-A7
  828. 6060 I9=2
  829. 6070 RETURN
  830. 6080 CHAIN "MENU" :'************************************************
  831. 6090 PRINT "DIMENSION FT & INCHS? YES=0 NO=1";
  832. 6100 F0=0
  833. 6110 INPUT T0
  834. 6120 IF T0>0 THEN 6310
  835. 6130 PRINT "ENTER SPAN";
  836. 6140 INPUT W0,W1
  837. 6150 PRINT #1,USING FORMAT24$;W0,W1
  838. 6155 IF Q9=2 THEN PRINT #2,USING FORMAT24$;W0,W1
  839. 6160 W=W0+W1/12
  840. 6170 PRINT "ENTER RISE";
  841. 6180 INPUT H0,H1
  842. 6190 PRINT #1,USING FORMAT25$;H0,H1
  843. 6195 IF Q9=2 THEN PRINT #2,USING FORMAT25$;H0,H1
  844. 6200 H=H0+H1/12
  845. 6210 PRINT "ENTER TOP RADIUS";
  846. 6220 INPUT T0,T1
  847. 6230 PRINT #1,USING FORMAT26$;T0,T1
  848. 6235 IF Q9=2 THEN PRINT #2,USING FORMAT26$;T0,T1
  849. 6240 R1=T0+T1/12
  850. 6250 PRINT "ENTER SIDE RADIUS";
  851. 6260 INPUT T0,T1
  852. 6270 R2=T0+T1/12
  853. 6280 PRINT #1,USING FORMAT27$;T0,T1
  854. 6285 IF Q9=2 THEN PRINT #2,USING FORMAT27$;T0,T1
  855. 6290 PRINT #1," "
  856. 6295 IF Q9=2 THEN PRINT #2," "
  857. 6300 GOTO 6430
  858. 6310 PRINT "ENTER SPAN";
  859. 6320 INPUT W
  860. 6330 F0=1
  861. 6340 PRINT "ENTER RISE";
  862. 6350 INPUT H
  863. 6360 PRINT "ENTER TOP RADIUS";
  864. 6370 INPUT R1
  865. 6380 PRINT "ENTER SIDE RADIUS";
  866. 6390 INPUT R2
  867. 6400 PRINT #1,USING FORMAT28$;W,H
  868. 6405 IF Q9=2 THEN PRINT #2,USING FORMAT28$;W,H
  869. 6410 PRINT #1,USING FORMAT29$;R1,R2
  870. 6415 IF Q9=2 THEN PRINT #2,USING FORMAT29$;R1,R2
  871. 6420 PRINT #1," "
  872. 6425 IF Q9=2 THEN PRINT #2," "
  873. 6430 PRINT "IS DATA CORRECT  YES=0  NO=1";
  874. 6440 INPUT J
  875. 6450 IF J<1 THEN 6490
  876. 6460 PRINT #1," "
  877. 6465 IF Q9=2 THEN PRINT #2," "
  878. 6470 PRINT #1," "
  879. 6475 IF Q9=2 THEN PRINT #2," "
  880. 6480 GOTO 6090
  881. 6490 RETURN
  882. 6500 IF F0=1 THEN 6630
  883. 6510 H0=INT(W)
  884. 6520 PRINT #1,USING FORMAT24$;H0,12*(W-H0)+.5
  885. 6525 IF Q9=2 THEN PRINT #2,USING FORMAT24$;H0,12*(W-H0)+.5
  886. 6530 H0=INT(H)
  887. 6540 PRINT #1,USING FORMAT25$;H0,12*(H-H0)+.5
  888. 6545 IF Q9=2 THEN PRINT #2,USING FORMAT25$;H0,12*(H-H0)+.5
  889. 6550 H0=INT(R1)
  890. 6560 PRINT #1,USING FORMAT26$;H0,12*(R1-H0)+.5
  891. 6565 IF Q9=2 THEN PRINT #2,USING FORMAT26$;H0,12*(R1-H0)+.5
  892. 6570 H0=INT(R2)
  893. 6580 PRINT #1,USING FORMAT27$;H0,12*(R2-H0)+.5
  894. 6585 IF Q9=2 THEN PRINT #2,USING FORMAT27$;H0,12*(R2-H0)+.5
  895. 6590 PRINT #1," "
  896. 6595 IF Q9=2 THEN PRINT #2," "
  897. 6600 PRINT #1,USING FORMAT23$;A9,P9
  898. 6605 IF Q9=2 THEN PRINT #2,USING FORMAT23$;A9,P9
  899. 6610 PRINT #1," "
  900. 6615 IF Q9=2 THEN PRINT #2," "
  901. 6620 RETURN
  902. 6630 PRINT #1,USING FORMAT28$;W,H
  903. 6635 IF Q9=2 THEN PRINT #2,USING FORMAT28$;W,H
  904. 6640 PRINT #1,USING FORMAT29$;R1,R2
  905. 6645 IF Q9=2 THEN PRINT #2,USING FORMAT29$;R1,R2
  906. 6650 PRINT #1," "
  907. 6655 IF Q9=2 THEN PRINT #2," "
  908. 6660 GOTO 6600
  909. 6740 IF I9=4 THEN 6870
  910. 6750 X=W/2-R2
  911. 6760 Y=R1-H/2
  912. 6770 A=ATN(X/Y)*R9
  913. 6780 B=(90-A)*2
  914. 6790 Z=SQR(X^2+Y^2)
  915. 6800 C=(Y*R1-Y*Z)/Z
  916. 6810 D=X*R1/Z
  917. 6820 E=H/2-C
  918. 6830 A5=.5*R1^2*(2*A/R9-SIN(2*A/R9))
  919. 6840 A9=2*A5+4*D*C+R2^2*(B/R9-SIN(B/R9))
  920. 6850 P9=4*A/R9*R1+2*B/R9*R2
  921. 6860 REM  PARTIAL AREA
  922. 6870 IF X0>E THEN 6940
  923. 6880 T3=(R1-X0)/R1
  924. 6890 T4=ATN(SQR(1-T3^2)/T3)
  925. 6900 C8=2*R1*SIN(T4)
  926. 6910 P8=2*T4*R1
  927. 6920 A8=R1^2*T4-(R1-X0)*SQR(2*R1*X0-X0^2)
  928. 6930 GOTO 7230
  929. 6940 IF X0>(2*C+E) THEN 7150
  930. 6950 X1=X0-E
  931. 6960 P=X1/SIN(B/2/R9)
  932. 6970 P4=P*COS(B/2/R9)
  933. 6980 P2=R2-P
  934. 6990 B1=180-B/2
  935. 7000 T3=P2*SIN(B1/R9)/R2
  936. 7010 B2=ATN(T3/SQR(1-T3^2))*R9
  937. 7020 B3=180-B1-B2
  938. 7030 P1=R2*SIN(B3/R9)/SIN(B1/R9)
  939. 7040 P5=P1-P4
  940. 7050 A7=X1*P5
  941. 7060 T5=B3/R9
  942. 7070 T6=2*A/R9
  943. 7080 P7=R2*T5
  944. 7090 P6=R1*T6
  945. 7100 P8=P6+P7*2
  946. 7110 A6=R2^2*(T5-SIN(T5))
  947. 7120 A8=A7+A6+2*D*X1+A5
  948. 7130 C8=2*D+2*P5
  949. 7140 GOTO 7230
  950. 7150 X1=H-X0
  951. 7160 T3=(R1-X1)/R1
  952. 7170 T4=ATN(SQR(1-T3^2)/T3)
  953. 7180 P7=2*T4*R1
  954. 7190 P8=P9-P7
  955. 7200 A7=R1^2*T4-(R1-X1)*(2*R1*X1-X1^2)^.5
  956. 7210 C8=2*R1*SIN(T4)
  957. 7220 A8=A9-A7
  958. 7230 I9=4
  959. 7240 RETURN
  960. 7250 I9=0
  961. 7260 PRINT "ENTER SPAN (FT, IN)";
  962. 7270 INPUT W0,W1
  963. 7280 PRINT #1,USING FORMAT24$;W0,W1
  964. 7285 IF Q9=2 THEN PRINT #2,USING FORMAT24$;W0,W1
  965. 7290 W=W0+W1/12
  966. 7300 PRINT "ENTER TOP RISE (FT, IN)";
  967. 7310 INPUT H0,H1
  968. 7320 PRINT #1,USING FORMAT30$;H0,H1
  969. 7325 IF Q9=2 THEN PRINT #2,USING FORMAT30$;H0,H1
  970. 7330 H=2*H0+H1/6
  971. 7340 F0=H0
  972. 7350 F1=H1
  973. 7360 PRINT "ENTER TOTAL RISE (FT, IN)";
  974. 7370 INPUT H0,H1
  975. 7380 PRINT #1,USING FORMAT31$;H0,H1
  976. 7385 IF Q9=2 THEN PRINT #2,USING FORMAT31$;H0,H1
  977. 7390 M0=H-H0-H1/12
  978. 7400 IF H1<F1 THEN 7430
  979. 7410 PRINT #1,USING FORMAT32$;H0-F0,H1-F1
  980. 7415 IF Q9=2 THEN PRINT #2,USING FORMAT32$;H0-F0,H1-F1
  981. 7420 GOTO 7440
  982. 7430 PRINT #1,USING FORMAT32$;H0-F0-1,H1-F1+12
  983. 7435 IF Q9=2 THEN PRINT #2,USING FORMAT32$;H0-F0-1,H1-F1+12
  984. 7440 PRINT "ENTER TOP RADIUS (FT, IN)";
  985. 7450 INPUT T0,T1
  986. 7460 PRINT #1,USING FORMAT26$;T0,T1
  987. 7465 IF Q9=2 THEN PRINT #2,USING FORMAT26$;T0,T1
  988. 7470 R1=T0+T1/12
  989. 7480 PRINT "ENTER SIDE RADIUS (FT, IN)";
  990. 7490 INPUT T0,T1
  991. 7500 PRINT #1,USING FORMAT27$;T0,T1
  992. 7505 IF Q9=2 THEN PRINT #2,USING FORMAT27$;T0,T1
  993. 7510 R2=T0+T1/12
  994. 7520 PRINT #1," "
  995. 7525 IF Q9=2 THEN PRINT #2," "
  996. 7530 PRINT "IS DATA CORRECT? YES=0 N0=1";
  997. 7540 INPUT J
  998. 7550 IF J=1 THEN 7260
  999. 7560 RETURN
  1000. 7570 H0=INT(W)
  1001. 7580 PRINT #1,USING FORMAT24$;H0,12*(W-H0)+.5
  1002. 7585 IF Q9=2 THEN PRINT #2,USING FORMAT24$;H0,12*(W-H0)+.5
  1003. 7590 PRINT #1,USING FORMAT30$;F0,F1
  1004. 7595 IF Q9=2 THEN PRINT #2,USING FORMAT30$;F0,F1
  1005. 7600 H1=H/2-M0
  1006. 7610 H0=INT(H1+1E-08)
  1007. 7620 W0=0
  1008. 7630 IF F1+12*(H1-H0)+.002<12 THEN 7650
  1009. 7640 W0=1
  1010. 7650 PRINT #1,USING FORMAT31$;H0+F0+W0,ABS(F1+12*(H1-H0)-12*W0)+.5
  1011. 7655 IF Q9=2 THEN PRINT #2,USING FORMAT31$;H0+F0+W0,ABS(F1+12*(H1-H0)-12*W0)+.5
  1012. 7660 PRINT #1,USING FORMAT32$;H0,ABS(12*(H1-H0))+.5
  1013. 7665 IF Q9=2 THEN PRINT #2,USING FORMAT32$;H0,ABS(12*(H1-H0))+.5
  1014. 7670 H0=INT(R1)
  1015. 7680 PRINT #1,USING FORMAT26$;H0,12*(R1-H0)+.5
  1016. 7685 IF Q9=2 THEN PRINT #2,USING FORMAT26$;H0,12*(R1-H0)+.5
  1017. 7690 H0=INT(R2)
  1018. 7700 PRINT #1,USING FORMAT27$;H0,12*(R2-H0)+.5
  1019. 7705 IF Q9=2 THEN PRINT #2,USING FORMAT27$;H0,12*(R2-H0)+.5
  1020. 7710 PRINT #1," "
  1021. 7715 IF Q9=2 THEN PRINT #2," "
  1022. 7720 RETURN
  1023. 7730 IF I9=8 THEN 7920
  1024. 7740 REM TOTAL AREA
  1025. 7750 D=ATN((R2/R1)/SQR(1-(R2/R1)^2))*R9
  1026. 7760 S2=1.285575219#*T+.71442478#*C
  1027. 7770 H0=12*(S2-INT(S2))
  1028. 7780 IF H0>=11.5 THEN 7840
  1029. 7790 PRINT #1,USING FORMAT24$;INT(S2),H0+.5
  1030. 7795 IF Q9=2 THEN PRINT #2,USING FORMAT24$;INT(S2),H0+.5
  1031. 7800 PRINT #1," "
  1032. 7810 GOTO 7840
  1033. 7820 PRINT #1,USING FORMAT24$;INT(S2)+1,0
  1034. 7825 IF Q9=2 THEN PRINT #2,USING FORMAT24$;INT(S2)+1,0
  1035. 7830 PRINT #1," "
  1036. 7835 IF Q9=2 THEN PRINT #2," "
  1037. 7840 S4=S2-2*(R1*(1-COS(D/R9)))
  1038. 7850 A7=S4*S4*TAN(D/R9)/4+D*PI*R1*R1/180-(2*R1-S2)^2*TAN(D/R9)/4
  1039. 7860 A9=A7+2*PI*T*T/9-(T-C)^2*.492403876#+5*PI*C*C/18
  1040. 7870 P9=S4+PI*R1*D/90+5*PI*C/9+4*PI*T/9
  1041. 7880 B=R2+.766044443#*C
  1042. 7890 E=S4*TAN(D/R9)/2
  1043. 7900 PRINT #1,USING FORMAT23$;A9,P9
  1044. 7905 IF Q9=2 THEN PRINT #2,USING FORMAT23$;A9,P9
  1045. 7910 PRINT #1," "
  1046. 7915 IF Q9=2 THEN PRINT #2," "
  1047. 7920 REM PARTIAL AREA
  1048. 7930 IF X0>E THEN 7980
  1049. 7940 A8=PI*(R1*X0/R2)^2*D/180+(S4*X0*(2*E-X0))/(2*E)
  1050. 7950 C8=S2-2*R1+2*SQR(R1^2-(R2-X0)^2)
  1051. 7960 P8=S4+PI*D*(R1*X0/R2)/90
  1052. 7970 GOTO 8180
  1053. 7980 IF X0>R2 THEN 8010
  1054. 7990 A8=S4*S4*TAN(D/R9)/4+PI*(R1*X0/R2)^2*D/180-((2*R1-S2)*(X0-E)^2)/(2*(R2-E))
  1055. 8000 GOTO 7950
  1056. 8010 IF X0>B THEN 8070
  1057. 8020 A8=A7+5*PI*(C*C-(C-(C*(X0-R2))/(B-R2))^2)/18
  1058. 8030 A8=A8+((S2-2*C)+(X0-R2)/1.191753592#)*(X0-R2)
  1059. 8040 C8=S2-2*C+(X0-R2)/.595876796#+2*(C-(C*(X0-R2))/(B-R2))
  1060. 8050 P8=S4+PI*R1*D/90+PI*C*5/9-PI*(C-(C*(X0-R2))/(B-R2))*5/9
  1061. 8060 GOTO 8180
  1062. 8070 IF X0<>H THEN 8120
  1063. 8080 A8=A9
  1064. 8090 P8=P9
  1065. 8100 C8=0
  1066. 8110 GOTO 8180
  1067. 8120 X=H-X0
  1068. 8130 X1=(T-X)/T
  1069. 8140 T3=2*ATN(SQR(1-X1*X1)/X1)
  1070. 8150 A8=A9-T*T*(T3-SIN(T3))/2
  1071. 8160 C8=2*T*SIN(T3/2)
  1072. 8170 P8=P9-T*T3
  1073. 8180 I9=8
  1074. 8190 RETURN
  1075. 8200 PRINT "ENTER RADIUS RT (FT, IN)";
  1076. 8210 INPUT H0,H1
  1077. 8220 T=H0+H1/12
  1078. 8230 PRINT #1,USING FORMAT33$;H0,H1
  1079. 8235 IF Q9=2 THEN PRINT #2,USING FORMAT33$;H0,H1
  1080. 8240 PRINT "ENTER RADIUS RC (FT, IN)";
  1081. 8250 INPUT H0,H1
  1082. 8260 PRINT #1,USING FORMAT34$;H0,H1
  1083. 8265 IF Q9=2 THEN PRINT #2,USING FORMAT34$;H0,H1
  1084. 8270 C=H0+H1/12
  1085. 8280 PRINT "ENTER RADIUS RS (FT, IN)";
  1086. 8290 INPUT H0,H1
  1087. 8300 PRINT #1,USING FORMAT35$;H0,H1
  1088. 8305 IF Q9=2 THEN PRINT #2,USING FORMAT35$;H0,H1
  1089. 8310 R1=H0+H1/12
  1090. 8320 PRINT "ENTER TOTAL RISE (FT, IN)";
  1091. 8330 INPUT H0,H1
  1092. 8340 H=H0+H1/12
  1093. 8350 PRINT #1,USING FORMAT31$;H0,H1
  1094. 8355 IF Q9=2 THEN PRINT #2,USING FORMAT31$;H0,H1
  1095. 8360 PRINT "ENTER TOP RISE (FT, IN)";
  1096. 8370 INPUT W0,W1
  1097. 8380 PRINT #1,USING FORMAT30$;W0,W1
  1098. 8385 IF Q9=2 THEN PRINT #2,USING FORMAT30$;W0,W1
  1099. 8390 PRINT #1," "
  1100. 8395 IF Q9=2 THEN PRINT #2," "
  1101. 8400 R2=H-W0-W1/12
  1102. 8410 PRINT "IS DATA CORRECT? YES=0 N0=1";
  1103. 8420 INPUT J
  1104. 8430 IF J=1 THEN 8200
  1105. 8440 RETURN
  1106. 8450 H0=INT(T)
  1107. 8460 PRINT #1,USING FORMAT33$;H0,12*(T-H0)+.5
  1108. 8465 IF Q9=2 THEN PRINT #2,USING FORMAT33$;H0,12*(T-H0)+.5
  1109. 8470 H0=INT(C)
  1110. 8480 PRINT #1,USING FORMAT34$;H0,12*(C-H0)+.5
  1111. 8485 IF Q9=2 THEN PRINT #2,USING FORMAT34$;H0,12*(C-H0)+.5
  1112. 8490 H0=INT(R1)
  1113. 8500 PRINT #1,USING FORMAT35$;H0,12*(R1-H0)+.5
  1114. 8505 IF Q9=2 THEN PRINT #2,USING FORMAT35$;H0,12*(R1-H0)+.5
  1115. 8510 H0=INT(H)
  1116. 8520 PRINT #1,USING FORMAT31$;H0,12*(H-H0)+.5
  1117. 8525 IF Q9=2 THEN PRINT #2,USING FORMAT31$;H0,12*(H-H0)+.5
  1118. 8530 PRINT #1,USING FORMAT30$;W0,W1
  1119. 8535 IF Q9=2 THEN PRINT #2,USING FORMAT30$;W0,W1
  1120. 8540 PRINT #1," "
  1121. 8545 IF Q9=2 THEN PRINT #2," "
  1122. 8550 H0=12*(S2-INT(S2))
  1123. 8560 IF H0>=11.5 THEN 8600
  1124. 8570 PRINT #1,USING FORMAT24$;INT(S2),H0+.5
  1125. 8575 IF Q9=2 THEN PRINT #2,USING FORMAT24$;INT(S2),H0+.5
  1126. 8580 PRINT #1," "
  1127. 8585 IF Q9=2 THEN PRINT #2," "
  1128. 8590 GOTO 8620
  1129. 8600 PRINT #1,USING FORMAT24$;INT(S2)+1,0
  1130. 8605 IF Q9=2 THEN PRINT #2,USING FORMAT24$;INT(S2)+1,0
  1131. 8610 PRINT #1," "
  1132. 8615 IF Q9=2 THEN PRINT #2," "
  1133. 8620 PRINT #1,USING FORMAT23$;A9,P9
  1134. 8625 IF Q9=2 THEN PRINT #2,USING FORMAT23$;A9,P9
  1135. 8630 PRINT #1," "
  1136. 8635 IF Q9=2 THEN PRINT #2," "
  1137. 8640 RETURN
  1138. 8650 IF I9=6 THEN 8950
  1139. 8660 REM TOTAL AREA
  1140. 8670 F=R4-R4*COS(U1/R9)
  1141. 8680 F1=R4*SIN(U1/R9)
  1142. 8690 Y4=R4*2*U1/R9
  1143. 8700 Y0=2*R3*SIN((U2+U3)/2/R9)
  1144. 8710 F3=R3*(U2+U3)/R9
  1145. 8720 T=U3+(90-(U2+U3)/2)
  1146. 8730 Y1=Y0*SIN(T/R9)
  1147. 8740 Y6=Y0*COS(T/R9)
  1148. 8750 Y8=R1*COS(Z2/R9)
  1149. 8760 F9=R1*SIN(Z2/R9)
  1150. 8770 Y9=R1*2*Z2/R9
  1151. 8780 F0=R1-Y8
  1152. 8790 T1=R2*SIN(U8/R9)
  1153. 8800 U0=U8+U3
  1154. 8810 Y3=2*R2*SIN(U8/2/R9)
  1155. 8820 Y2=Y3*COS((U0-U8/2)/R9)
  1156. 8830 Y7=Y3*SIN((U0-U8/2)/R9)
  1157. 8840 Y5=R2*U8/R9
  1158. 8850 F3=R3*(U2+U3)/R9
  1159. 8860 P9=Y4+2*F3+2*Y5+Y9
  1160. 8870 A4=.5*R4^2*(2*U1/R9-SIN(2*U1/R9))
  1161. 8880 A3=2*F1*Y1+Y1*Y6+R3^2*((U2+U3)/R9-SIN((U2+U3)/R9))
  1162. 8890 A2=2*F9*Y2+Y2*Y7+R2^2*(U8/R9-SIN(U8/R9))
  1163. 8900 A1=.5*R1^2*(2*Z2/R9-SIN(2*Z2/R9))
  1164. 8910 A9=A1+A2+A3+A4
  1165. 8920 PRINT #1,USING FORMAT23$;A9-P9/12,P9
  1166. 8925 IF Q9=2 THEN PRINT #2,USING FORMAT23$;A9-P9/12,P9
  1167. 8930 PRINT #1," "
  1168. 8935 IF Q9=2 THEN PRINT #2," "
  1169. 8940 I9=6
  1170. 8950 IF X0>F THEN 9020
  1171. 8960 F5=R4-X0
  1172. 8970 U9=2*ATN(SQR(1-(F5/R4)^2)/(F5/R4))*R9
  1173. 8980 A8=R4^2*(U9/R9-SIN(U9/R9))/2
  1174. 8990 C8=2*R4*SIN(U9/2/R9)
  1175. 9000 P8=R4*U9/R9
  1176. 9010 GOTO 9360
  1177. 9020 IF X0>F+Y1 THEN 9130
  1178. 9030 P6=F+R3*SIN(U2/R9)
  1179. 9040 X1=X0-F
  1180. 9050 U4=U2-ATN((P6-X0)/R3/SQR(1-((P6-X0)/R3)^2))*R9
  1181. 9060 P8=2*R4*U1/R9+2*R3*U4/R9
  1182. 9070 U6=90-U2
  1183. 9080 U7=90-U6-U4/2
  1184. 9090 F6=X1*TAN(U7/R9)
  1185. 9100 A8=A4+R3^2*(U4/R9-SIN(U4/R9))+2*F1*X1+F6*X1
  1186. 9110 C8=2*F1+2*F6
  1187. 9120 GOTO 9360
  1188. 9130 IF X0>F+Y1+Y2 THEN 9280
  1189. 9140 X1=F+Y1+Y2-X0
  1190. 9150 S5=X1/SIN(U0/R9)
  1191. 9160 S4=S5*COS(U0/R9)
  1192. 9170 S6=R2-S5
  1193. 9180 J=S6*SIN((180-U0)/R9)/R2
  1194. 9190 Z1=ATN(J/SQR(1-J^2))*R9
  1195. 9200 U9=U8+U3-Z1
  1196. 9210 S7=R2*U9/R9
  1197. 9220 P8=Y4+2*F3+2*Y5-2*S7
  1198. 9230 Z7=S6/SIN(Z1/R9)*SIN(U9/R9)
  1199. 9240 S2=Z7-S4
  1200. 9250 A8=A2-2*F9*X1-X1*S2-R2^2*(U9/R9-SIN(U9/R9))+A3+A4
  1201. 9260 C8=2*(F9+S2)
  1202. 9270 GOTO 9360
  1203. 9280 X1=F+Y1+Y2+F0-X0
  1204. 9290 S8=R1-X1
  1205. 9300 Z5=ATN(SQR(1-(S8/R1)^2)/(S8/R1))*R9
  1206. 9310 S9=R1*SIN(Z5/R9)
  1207. 9320 A8=A9-.5*R1^2*(2*Z5/R9-SIN(2*Z5/R9))
  1208. 9330 Z6=R1*2*Z5/R9
  1209. 9340 P8=P9-Z6
  1210. 9350 C8=2*S9
  1211. 9360 RETURN
  1212. 9370 PRINT "ENTER RISE (FT, IN)";
  1213. 9380 INPUT H0,H1
  1214. 9390 I=1 : T0=22 : T1=2 : W0=23 : W1=5
  1215. 9400 IF T0=H0 AND T1=H1 THEN 9640
  1216. 9410 I=2 : T0=25 : T1=6 : W0=23 : W1=8
  1217. 9420 IF T0=H0 AND T1=H1 THEN 9640
  1218. 9430 I=3 : T0=25 : T1=10 : W0=24 : W1=0
  1219. 9440 IF T0=H0 AND T1=H1 THEN 9640
  1220. 9450 I=4 : T0=25 : T1=11 : W0=25 : W1=6
  1221. 9460 IF T0=H0 AND T1=H1 THEN 9640
  1222. 9470 I=5 : T0=27 : T1=8 : W0=24 : W1=10
  1223. 9480 IF T0=H0 AND T1=H1 THEN 9640
  1224. 9490 I=6 : T0=28 : T1=3 : W0=26 : W1=8
  1225. 9500 IF T0=H0 AND T1=H1 THEN 9640
  1226. 9510 I=7 : T0=27 : T1=0 : W0=27 : W1=5
  1227. 9520 IF T0=H0 AND T1=H1 THEN 9640
  1228. 9530 I=8 : T0=27 : T1=10 : W0=28 : W1=1
  1229. 9540 IF T0=H0 AND T1=H1 THEN 9640
  1230. 9550 I=9 : T0=30 : T1=7 : W0=28 : W1=7
  1231. 9560 IF T0=H0 AND T1=H1 THEN 9640
  1232. 9570 I=10 : T0=29 : T1=8 : W0=30 : W1=0
  1233. 9580 IF T0=H0 AND T1=H1 THEN 9640
  1234. 9590 I=11 : T0=31 : T1=2 : W0=30 : W1=0
  1235. 9600 IF T0=H0 AND T1=H1 THEN 9640
  1236. 9610 PRINT
  1237. 9620 PRINT "INCORRECT RISE, TRY AGAIN"
  1238. 9622 PRINT"ACCEPTABLE RISES ARE AS FOLLOWS"
  1239. 9625 IF Q9=2 THEN PRINT"(22,2) (25,6) (25,10) (25,11) (27,0) (27,8) (27,10) (28,3) (29,8) (30,7) (31,2)"
  1240. 9630 GOTO 9370
  1241. 9640 PRINT #1,USING FORMAT24$;W0,W1
  1242. 9645 IF Q9=2 THEN PRINT #2,USING FORMAT24$;W0,W1
  1243. 9650 PRINT #1,USING FORMAT25$;H0,H1
  1244. 9655 IF Q9=2 THEN PRINT #2,USING FORMAT25$;H0,H1
  1245. 9660 PRINT #1," "
  1246. 9665 IF Q9=2 THEN PRINT #2," "
  1247. 9670 PRINT "IS DATA CORRECT?  0=YES 1=NO";
  1248. 9680 INPUT J
  1249. 9690 IF J=1 THEN 9370
  1250. 9700 ON I GOTO 9710,9740,9770,9800,9830,9860,9890,9920,9950,9980,10010
  1251. 9710 R1=14.8333 : R2=6.0833 : R3=13.0833 : R4=11.25 : U1=48
  1252. 9720 B1=23 : U2=41 : B2=37 : U3=14 : B3=15 : U8=37 : B8=20
  1253. 9730 Z2=38 : B4=25 : GOTO 10040
  1254. 9740 R1=14.8333 : R2=6.0833 : R3=16.5833 : R4=8.916701 : U1=38
  1255. 9750 B1=12 : U2=51 : B2=48 : U3=14 : B3=15 : U8=37 : B8=20
  1256. 9760 Z2=38 : B4=25 : GOTO 10040
  1257. 9770 R1=16.1667 : R2=7 : R3=17.3333 : R4=9.916701 : U1=45
  1258. 9780 B1=42 : U2=44 : B2=18 : U3=13 : B3=42 : U8=45 : B8=13
  1259. 9790 Z2=31 : B4=5 : GOTO 10040
  1260. 9800 R1=15.8333 : R2=6.9167 : R3=18.0833 : R4=10.5833 : U1=45
  1261. 9810 B1=7 : U2=44 : B2=53 : U3=5 : B3=35 : U8=45 : B8=35
  1262. 9820 Z2=38 : B4=50 : GOTO 10040
  1263. 9830 R1=15.9167 : R2=5.75 : R3=19.6667 : R4=9.25 : U1=44
  1264. 9840 B1=12 : U2=45 : B2=48 : U3=12 : B3=6 : U8=39 : B8=14
  1265. 9850 Z2=38 : B4=40 : GOTO 10040
  1266. 9860 R1=20.9167 : R2=4.75 : R3=20.0833 : R4=8 : U1=34
  1267. 9870 B1=2 : U2=55 : B2=58 : U3=12 : B3=12 : U8=47 : B8=12
  1268. 9880 Z2=30 : B4=36 : GOTO 10040
  1269. 9890 R1=19.9167 : R2=4.5833 : R3=20.3333 : R4=9.583299 : U1=37
  1270. 9900 B1=56 : U2=52 : B2=4 : U3=6 : B3=18 : U8=49 : B8=18
  1271. 9910 Z2=34 : B4=24 : GOTO 10040
  1272. 9920 R1=20.4167 : R2=7.25 : R3=19 : R4=12.1667 : U1=46
  1273. 9930 B1=46 : U2=43 : B2=14 : U3=9 : B3=37 : U8=50 : B8=12
  1274. 9940 Z2=30 : B4=11 : GOTO 10040
  1275. 9950 R1=18.1667 : R2=7 : R3=24 : R4=11.1667 : U1=49
  1276. 9960 B1=1 : U2=40 : B2=59 : U3=4 : B3=43 : U8=45 : B8=15
  1277. 9970 Z2=40 : B4=2 : GOTO 10040
  1278. 9980 R1=21.8333 : R2=6.5833 : R3=24 : R4=11.9167 : U1=47
  1279. 9990 B1=54 : U2=42 : B2=6 : U3=1 : B3=40 : U8=54 : B8=51
  1280. 10000 Z2=33 : B4=29 : GOTO 10040
  1281. 10010 R1=19.25 : R2=7 : R3=24 : R4=12.0833 : U1=49
  1282. 10020 B1=0 : U2=41 : B2=0 : U3=4 : B3=41 : U8=45 : B8=4
  1283. 10030 Z2=40 : B4=15
  1284. 10040 U1=U1+B1/60
  1285. 10050 U2=U2+B2/60
  1286. 10060 U3=U3+B3/60
  1287. 10070 U8=U8+B8/60
  1288. 10080 Z2=Z2+B4/60
  1289. 10090 H=H0+(H1+2)/12
  1290. 10100 W0=W0+(W1+2)/12
  1291. 10110 RETURN
  1292. 10120 PRINT #1,USING FORMAT24$;INT(W0-1/6),12*(W0-1/6-INT(W0-1/6))+.5
  1293. 10125 IF Q9=2 THEN PRINT #2,USING FORMAT24$;INT(W0-1/6),12*(W0-1/6-INT(W0-1/6))+.5
  1294. 10130 PRINT #1,USING FORMAT25$;H0,H1
  1295. 10135 IF Q9=2 THEN PRINT #2,USING FORMAT25$;H0,H1
  1296. 10140 PRINT #1," "
  1297. 10145 IF Q9=2 THEN PRINT #2," "
  1298. 10150 RETURN
  1299. 10160 IF I9=10 THEN 10220
  1300. 10170 A9=PI*R1*R1
  1301. 10180 P9=2*PI*R1
  1302. 10190 PRINT #1,USING FORMAT23$;A9,P9
  1303. 10195 IF Q9=2 THEN PRINT #2,USING FORMAT23$;A9,P9
  1304. 10200 I9=10
  1305. 10210 PRINT #1," "
  1306. 10215 IF Q9=2 THEN PRINT #2," "
  1307. 10220 REM PARTIAL AREA
  1308. 10230 IF X0 >= R1 THEN 10300
  1309. 10240 X=(R1-X0)/R1
  1310. 10250 T4=2*ATN(SQR(1-X^2)/X)
  1311. 10260 A8=R1^2*(T4-SIN(T4))/2
  1312. 10270 P8=R1*T4
  1313. 10280 C8=2*R1*SIN(T4/2)
  1314. 10290 GOTO 10400
  1315. 10300 IF X0<>R1 THEN 10350
  1316. 10310 A8=PI*R1*R1/2
  1317. 10320 P8=PI*R1
  1318. 10330 C8=H
  1319. 10340 GOTO 10400
  1320. 10350 X=(X0-R1)/R1
  1321. 10360 T4=2*ATN(SQR(1-X^2)/X)
  1322. 10370 A8=A9-R1^2*(T4-SIN(T4))/2
  1323. 10380 P8=P9-R1*T4
  1324. 10390 C8=2*R1*SIN(T4/2)
  1325. 10400 RETURN
  1326. 10410 PRINT "ENTER DIAMETER (FT)";
  1327. 10420 INPUT H
  1328. 10450 PRINT "IS DATA CORRECT?  YES=0 NO=1";
  1329. 10460 INPUT J
  1330. 10470 IF J<1 THEN 10510
  1331. 10480 PRINT #1," "
  1332. 10485 IF Q9=2 THEN PRINT #2," "
  1333. 10490 PRINT #1," "
  1334. 10495 IF Q9=2 THEN PRINT #2," "
  1335. 10500 GOTO 10410
  1336. 10510 R1=H/2
  1337. 10520 RETURN
  1338. 10530 PRINT #1," "
  1339. 10535 IF Q9=2 THEN PRINT #2," "
  1340. 10540 PRINT #1," "
  1341. 10545 IF Q9=2 THEN PRINT #2," "
  1342. 10550 RETURN
  1343. 55000 REM **************    ERROR   TRAPING   ROUTINE    ******************************************************************************                         '
  1344. 55010 ET=ERR :EL=ERL
  1345. 55020 PRINT:PRINT:PRINT
  1346. 55030 IF ET=25 THEN PRINT"PRINTER IS NOT READY":GOTO 55070
  1347. 55040 IF ET=24 THEN PRINT "PRINTER IS OUT OF PAPER. REPLACE PAPER ":GOTO 55070
  1348. 55050 IF ET>=70 AND ET<=72 THEN PRINT"DISK ERROR < not ready , media error , etc. > ":PRINT"PRESS ANY KEY TO CONTINUE":GOTO 55080
  1349. 55060 IF ET=53 THEN PRINT"MENU NOT ON DEFAULT DRIVE DISK":RESUME 55110:ELSE PRINT"ERROR # " ET " ON LINE # " EL:RESUME 55110
  1350. 55070 PRINT "Turn on printer. Make sure  'ON LINE '  light is on.":PRINT:PRINT:PRINT "PRESS ANY KEY TO CONTINUE"
  1351. 55080 AA$=INKEY$:IF AA$="" THEN 55080
  1352. 55090 RESUME
  1353. 55100 REM **********************************************************************
  1354. 55110 ON ERROR GOTO 0:END
  1355.