home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 13 / 13.iso / p / p190 / 4.ddi / PRG / CLGCH.PRG < prev    next >
Encoding:
Text File  |  1990-02-28  |  5.8 KB  |  238 lines

  1. SET TALK OFF
  2. INPUT " ─ú ╩² =" TO M
  3. INPUT " │▌ ╩² =" TO Z1
  4. INPUT " ┐φ ╢╚ =" TO L
  5. ACCEPT " ╤╣ ┴ª ╜╟ ╩╟ ╖± ▒Ω ╫╝ ╓╡ : 20 ╢╚ ? [Y]" TO YN
  6. IF YN='N'
  7. INPUT ' ╩Σ ╚δ ╤╣ ┴ª ╜╟ ╓╡ =' TO LL
  8. ENDI
  9. ACCE ' ╩╟ ╖± ╨▒ │▌ ┬╓ ? [N]' TO YN
  10. IF UPPER(YN)='Y'
  11. INPUT ' ┬▌ ╨² ╜╟ =' TO LK
  12. ELSE
  13. STOR 0 TO LK
  14. ENDI
  15. INPUT ' │▌ ┬╓ ╘╦ ╢» ╛½ ╢╚ ╡╚ ╝╢ =' TO YDDJ
  16. INPUT ' │▌ ┬╓ ╞╜ ╬╚ ╨╘ ╛½ ╢╚ ╡╚ ╝╢ =' TO PWDJ
  17. INPUT ' │▌ ┬╓ ╜╙ ┤Ñ ╛½ ╢╚ ╡╚ ╝╢ =' TO JCDJ
  18. ACCEPT ' ░┤JB179╩Σ╚δ(╝ⁿ╚δG),░┤JB/GQ╩Σ╚δ(╝ⁿ╚δJ):' TO BL
  19. ACCEPT ' │▌ ┬╓ ▓α ╧╢ =' TO CHX
  20. USE \HOUSEM\DBF\SIN
  21. STOR INT(LK) TO SINB
  22. IF SINB<>0
  23. LOCA FOR RECNO()=SINB
  24. STOR SB TO SINB
  25. ENDI
  26. IF SINB=0
  27. STOR 10000 TO L1
  28. ELSE
  29. STOR 4*M/SINB TO L1
  30. ENDI
  31. IF L>L1
  32. STOR 'DS' TO ZX
  33. ELSE
  34. STOR 'DL' TO ZX
  35. ENDI
  36. ?" ╟δ ╤í ╘± ╧┬ ┴╨ ▓Γ ┴┐ ╥╟ ╞≈ ╫Θ ║╧ ,▓ó ╝ⁿ ╚δ ╫Θ ║┼"
  37. IF YDDJ>=5.AND.YDDJ<=8
  38. ?"  1) ╡Ñ│▌╥╟,│▌┬╓═≥─▄▓Γ┴┐╗·,│▌╧≥╥╟    ú¿╩╩╙├╙┌ú╡---ú╕╝╢│▌┬╓ú⌐"
  39. ENDI
  40. IF YDDJ>=3.AND.YDDJ<=6
  41. ?"  2) │▌╛α╥╟,▓¿╢╚╥╟,╓ß╧≥│▌╛α╥╟    ú¿╩╩╙├╙┌ú│---ú╢╝╢│▌┬╓ú⌐"
  42. ENDI
  43. IF YDDJ>=3.AND.YDDJ<=7
  44. ?"  3) │▌╛α╥╟,│▌╨╬╥╟,│▌╧≥╥╟    ú¿╩╩╙├╙┌ú│---ú╖╝╢│▌┬╓ú⌐"
  45. ENDI
  46. IF YDDJ>=3.AND.YDDJ<=7
  47. ?"  4) │▌╛α╥╟,╗∙╜┌╥╟,│▌╧≥╥╟    ú¿╩╩╙├╙┌ú│---ú╖╝╢│▌┬╓ú⌐"
  48. ENDI
  49. IF YDDJ>=6.AND.YDDJ<=9
  50. ?"  5) ╦½─÷╥╟,╣½╖¿╧▀╟º╖╓│▀,│▌╧≥╥╟    ú¿╩╩╙├╙┌ú╢---ú╣╝╢│▌┬╓ú⌐"
  51. ENDI
  52. IF YDDJ>=6.AND.YDDJ<=8
  53. ?"  6) ╠°╢»╥╟,│▌╨╬╥╟,╗∙╜┌╥╟,│▌╧≥╥╟,╣½╖¿╧▀╟º╖╓│▀ ( ╗∙╜┌,│▌╨╬╬≤▓ε ) "
  54. ENDI
  55. IF YDDJ>=6.AND.YDDJ<=8
  56. ?" 7) ╠°╢»╥╟,│▌╨╬╥╟,╗∙╜┌╥╟,│▌╧≥╥╟,╣½╖¿╧▀╟º╖╓│▀ ( ╗∙╜┌,╓▄╜┌╬≤▓ε )"
  57. ENDI
  58. IF YDDJ>=9.AND.YDDJ<=12
  59. ?"  8) ╠°╢»╥╟,│▌╛α╥╟,│▌╧≥╥╟    ú¿╩╩╙├╙┌ú╣---ú▒ú▓╝╢│▌┬╓ú⌐"
  60. ENDI
  61. INPUT TO KS
  62. STOR (90-LK) TO SINB
  63. USE \HOUSEM\DBF\SIN
  64. STOR INT(SINB) TO SINB
  65. IF SINB<>0
  66. LOCA FOR RECNO()=SINB
  67. STOR SB TO SINB
  68. ENDI
  69. STOR 3.14159*M*Z1/2/SINB TO LL
  70. STOR M*Z1/SINB TO D
  71. IF YDDJ<10
  72. STOR "J"+CHR(48+YDDJ) TO BGCH
  73. ELSE
  74. STOR YDDJ-10 TO NUM
  75. STOR "J"+CHR(49)+CHR(48+NUM) TO BGCH
  76. ENDI
  77. IF KS<=4
  78. USE \HOUSEM\DBF\FPK
  79. LOCA FOR LL>LMIN.AND.LL<=LMAX
  80. STOR &BGCH TO YD1
  81. IF KS=2.OR.KS=3.OR.KS=4
  82. ?" ╓▄ ╜┌ └█ ╗² ╬≤ ▓ε =",YD1/1000.000
  83. ENDI
  84. IF KS=1
  85. USE \HOUSEM\DBF\FF0
  86. LOCA FOR D>DMIN.AND.D<=DMAX.AND.M>MMIN.AND.M<=MMAX
  87. STOR &BGCH TO YD2
  88. STOR YD1+YD2 TO YD1
  89. ?" ╟╨ ╧≥ ╫█ ║╧ ╬≤ ▓ε =",YD1/1000.000
  90. ENDI
  91. ENDI
  92. IF KS>=5.AND.KS<8
  93. USE \HOUSEM\DBF\FW0
  94. LOCA FOR D>DMIN.AND.D<=DMAX
  95. STOR &BGCH TO YD2
  96. ?" ╣½ ╖¿ ╧▀ │ñ ╢╚ ▒Σ ╢» ╣½ ▓ε =",YD2/1000.000
  97. IF KS=5
  98. USE \HOUSEM\DBF\FI2
  99. LOCA FOR D>DMIN.AND.D<=DMAX.AND.M>MMIN.AND.M<=MMAX
  100. STOR &BGCH TO YD1
  101. ?" ╛╢ ╧≥ ╫█ ║╧ ╣½ ▓ε =",YD1/1000.000
  102. ENDI
  103. IF KS=6.OR.KS=7.OR.KS=8
  104. USE \HOUSEM\DBF\FR0
  105. LOCAT FOR D>DMIN.AND.D<=DMAX.AND.M>MMIN.AND.M<=MMAX
  106. STOR &BGCH TO YD1
  107. ?" │▌ ╚ª ╛╢ ╧≥ ╠° ╢» ╣½ ▓ε =",YD1/1000.000
  108. ENDI
  109. ENDI
  110. IF KS=1.OR.KS=2.OR.KS=3.OR.KS=4.OR.KS=7.OR.KS=8
  111. USE \HOUSEM\DBF\FPT
  112. LOCAT FOR D>DMIN.AND.D<=DMAX.AND.M>MMIN.AND.M<=MMAX
  113. STOR &BGCH TO GP2
  114. IF KS=8
  115. STOR GP2 TO GP1
  116. ?" ╓▄ ╜┌ ╝½ ╧▐ ╞½ ▓ε =",GP1/1000.000
  117. ENDI
  118. IF KS=7
  119. STOR GP2 TO GP1
  120. ?" ╓▄ ╜┌ ╝½ ╧▐ ╞½ ▓ε =",GP1/1000.000
  121. USE \HOUSEM\DBF\FPB
  122. LOCA FOR D>DMIN.AND.D<=DMAX.AND.M>MMIN.AND.M<=MMAX
  123. STOR &BGCH TO GP2
  124. ?" ╗∙ ╜┌ ╞½ ▓ε =",GP2/1000.000
  125. ENDI
  126. IF KS=4
  127. USE \HOUSEM\DBF\FPB
  128. LOCA FOR D>DMIN.AND.D<=DMAX.AND.M>MMIN.AND.M<=MMAX
  129. STOR &BGCH TO GP1
  130. ?" ╗∙ ╜┌ ╞½ ▓ε =",GP1/1000.000
  131. ?" ╓▄ ╜┌ ╝½ ╧▐ ╞½ ▓ε =",GP2/1000.000
  132. ENDI
  133. IF KS=3.OR.KS=1.OR.KS=2
  134. USE \HOUSEM\DBF\FF0
  135. LOCAT FOR D>DMIN.AND.D<=DMAX.AND.M>MMIN.AND.M<=MMAX
  136. STOR &BGCH TO GP1
  137. IF KS=3
  138. ?" │▌ ╨╬ ╣½ ▓ε =",GP1/1000.000
  139. ?" ╓▄ ╜┌ ╝½ ╧▐ ╞½ ▓ε =",GP2/1000.000
  140. ENDI
  141. ENDI
  142. IF KS=1
  143. STOR 0.6*(GP1+GP2) TO GP1
  144. ?" ╟╨ ╧≥ ╥╗ │▌ ╫█ ║╧ ╣½ ▓ε =",GP1/1000.000
  145. ENDI
  146. IF KS=2
  147. STOR 0.6*(GP1+GP2)/SINB TO GP1
  148. ?" ∩▌ ╨² ╧▀ ▓¿ ╢╚ ╣½ ▓ε =",GP1/1000.000
  149. ENDI
  150. ENDI
  151. IF KS=5
  152. USE \HOUSEM\DBF\FI4
  153. LOCA FOR D>DMIN.AND.D<=DMAX.AND.M>MMIN.AND.M<=MMAX
  154. STOR &BGCH TO GP1
  155. ENDI
  156. IF KS=6
  157. USE \HOUSEM\DBF\FPB
  158. LOCAT FOR D>DMIN.AND.D<=DMAX.AND.M>MMIN.AND.M<=MMAX
  159. STOR &BGCH TO GP1
  160. ?" ╗∙ ╜┌ ╝½ ╧▐ ╞½ ▓ε =",GP1/1000.000
  161. USE \HOUSEM\DBF\FF0
  162. LOCA FOR D>DMIN.AND.D<=DMAX.AND.M>MMIN.AND.M<=MMAX
  163. STOR &BGCH TO GP2
  164. ?" │▌ ╨╬ ╣½ ▓ε =",GP2/1000.000
  165. ENDI
  166. USE \HOUSEM\DBF\FB0
  167. LOCAT FOR L>BMIN.AND.L<=BMAX
  168. STOR &BGCH TO JC1
  169. ?" │▌ ╧≥ ╣½ ▓ε =",JC1/1000.000
  170. USE \HOUSEM\DBF\FPT
  171. LOCAT FOR D>DMIN.AND.D<=DMAX.AND.M>MMIN.AND.M<=MMAX
  172. STOR &BGCH TO LL
  173. IF BL="G"
  174. USE \HOUSEM\DBF\CHX
  175. STOR SUBSTR('&CHX',1,1) TO ESS
  176. STOR &ESS TO ESS
  177. STOR ESS*LL TO ESS
  178. ?" │▌ ║± ╔╧ ╞½ ▓ε =",ESS/1000.000
  179. STOR SUBSTR('&CHX',2,1) TO ESI
  180. STOR &ESI TO ESI
  181. STOR ESI*LL TO ESI
  182. ?" │▌ ║± ╧┬ ╞½ ▓ε =",ESI/1000.000
  183. IF ZX='DS'
  184. USE \HOUSEM\DBF\TSC
  185. LOCA FOR D>DMIN.AND.D<=DMAX.AND.M>MMIN.AND.M<=MMAX
  186. STOR &BGCH TO TWS
  187. ?" │▌ ║± ╣½ ▓ε =",TWS/1000.000
  188. ENDI
  189. IF ZX='DL'
  190. USE \HOUSEM\DBF\TWC
  191. LOCA FOR D>DMIN.AND.D<=DMAX.AND.M>MMIN.AND.M<=MMAX
  192. STOR &BGCH TO TWS
  193. ?" ╣½ ╖¿ ╧▀ ╞╜ ╛∙ │ñ ╢╚ ╣½ ▓ε =",TWS/1000.000
  194. USE \HOUSEM\DBF\FR0
  195. LOCA FOR D>DMIN.AND.D<=DMAX.AND.M>MMIN.AND.M<=MMAX
  196. STOR &BGCH TO LR
  197. STOR ESS*0.9397-0.72*LR*0.342 TO EWS
  198. STOR INT(EWS*1000.-500) TO EWS
  199. ?" ╣½ ╖¿ ╧▀ ╞╜ ╛∙ │ñ ╢╚ ╔╧ ╞½ ▓ε =",EWS/1000000.000
  200. STOR ESI*0.9397+0.72*LR*0.342 TO EWI
  201. STOR INT(EWI*1000.-500) TO EWI
  202. ?" ╣½ ╖¿ ╧▀ ╞╜ ╛∙ │ñ ╢╚ ╧┬ ╞½ ▓ε =",EWI/1000000.000
  203. ENDI
  204. ELSE
  205. IF PWDJ<10
  206. STOR "J"+CHR(48+PWDJ) TO MATE
  207. ELSE
  208. STOR "J"+CHR(49)+CHR(48+PWDJ-10) TO MATE
  209. ENDI
  210. IF ZX='DS'
  211. USE \HOUSEM\DBF\CHPC INDEX \HOUSEM\DBF\INDCHPC
  212. LOCAT FOR CXZL='&CHX' .AND. D>DMIN.AND.D<=DMAX.AND.M>MMIN.AND.M<=MMAX
  213. STOR -&MATE TO ESS
  214. ?" │▌ ║± ╔╧ ╞½ ▓ε =",ESS/1000.000
  215. USE \HOUSEM\DBF\TSC1
  216. LOCA FOR D>DMIN.AND.D<=DMAX.AND.M>MMIN.AND.M<=MMAX
  217. STOR &MATE TO TWS
  218. ?" │▌ ║± ╣½ ▓ε =",TWS/1000.000
  219. STOR ESS-TWS TO ESI
  220. ?" │▌ ║± ╧┬ ╞½ ▓ε =",ESI/1000.000
  221. ENDI
  222. IF ZX='DL'
  223. USE \HOUSEM\DBF\TWC1
  224. LOCA FOR D>DMIN.AND.D<=DMAX.AND.M>MMIN.AND.M<=MMAX
  225. STOR &MATE TO TWS
  226. ?" ╣½ ╖¿ ╧▀ ╞╜ ╛∙ │ñ ╢╚ ╣½ ▓ε =",TWS/1000.000
  227. USE \HOUSEM\DBF\GFXC
  228. LOCA FOR CXZL='&CHX' .AND. D>DMIN.AND.D<=DMAX.AND.M>MMIN.AND.M<=MMAX
  229. STOR -&MATE TO EWS
  230. ?" ╣½ ╖¿ ╧▀ ╞╜ ╛∙ │ñ ╢╚ ╔╧ ╞½ ▓ε =",EWS/1000.000
  231. STOR EWS-TWS TO EWI
  232. ?" ╣½ ╖¿ ╧▀ ╞╜ ╛∙ │ñ ╢╚ ╧┬ ╞½ ▓ε =",EWI/1000.000
  233. SET TALK OFF
  234. ENDI
  235. ENDI
  236. RETURN
  237.  
  238.