home *** CD-ROM | disk | FTP | other *** search
/ HAM Radio 1 / HamRadio.cdr / math / formulas / genmath.bas (.txt) < prev    next >
Encoding:
GW-BASIC  |  1988-12-23  |  3.1 KB  |  170 lines

  1. 9000  CLS
  2. 9005  PRINT "GENERAL MATH PROGRAM.  OPTIONS:"
  3. 9007  PRINT
  4. 9010  PRINT " 1) DERIVATIVES"
  5. 9015  PRINT " 2) INTEGRALS"
  6. 9020  PRINT " 3) SIMULTANEOUS EQUATIONS"
  7. 9025  PRINT " 4) GO TO MASTER MENU"
  8. 9027  PRINT
  9. 9030  PRINT "INPUT NUMBER OF YOUR CHOICE";
  10. 9035  INPUT N
  11. 9040  IF N=1 THEN GOTO 9070
  12. 9045  IF N=2 THEN GOTO 9155
  13. 9050  IF N=3 THEN GOTO 9290
  14. 9055  IF N=4 THEN RUN "menu"
  15. 9060  PRINT:PRINT "INVALID INPUT"
  16. 9065  GOTO 9030
  17. 9070  CLS
  18. 9075  PRINT "DERIVATIVES"
  19. 9077  PRINT
  20. 9080  PRINT "INPUT VALUE OF X AT WHICH TO TAKE DERIVATIVE";
  21. 9085  INPUT X
  22. 9090  GOSUB 9145
  23. 9095  T=Y
  24. 9100  X=X+0.000999999
  25. 9105  GOSUB 9145
  26. 9110  PRINT "DERIVATIVE OF FUNCTION AT ";X-0.000999999;" = ";(Y-T)/0.000999999
  27. 9115  PRINT:PRINT "INPUT 1 TO REPEAT DERIVATIVE COMPUTATION."
  28. 9116  PRINT "INPUT 2 TO GO TO GENERAL MATH MENU.";
  29. 9120  INPUT N
  30. 9125  IF N=1 THEN GOTO 9070
  31. 9130  IF N=2 THEN GOTO 9000
  32. 9135  PRINT:PRINT "INVALID INPUT"
  33. 9140  GOTO 9115
  34. 9145  PRINT "PUT EQUATION TO TAKE DERIVITAVE OF ON LINE 9145"
  35. 9150  RETURN
  36. 9155  CLS
  37. 9160  PRINT "INTEGRALS"
  38. 9165  PRINT "INPUT LOWER LIMIT";
  39. 9170  INPUT L
  40. 9175  PRINT "INPUT UPPER LIMIT";
  41. 9180  INPUT H
  42. 9185  PRINT "INPUT NUMBER OF DIVISIONS";
  43. 9190  INPUT C
  44. 9195  C=(H-L)/C
  45. 9200  S=0
  46. 9205  X=L
  47. 9210  GOSUB 9280
  48. 9215  FOR P=L TO H-C STEP C
  49. 9220  T=Y
  50. 9225  X=P+C
  51. 9230  GOSUB 9280
  52. 9235  S=S+T+Y
  53. 9240  NEXT P
  54. 9245  PRINT "INTEGRAL OF FUNCTION FROM ";L;" TO ";H;" = ";S*C/2
  55. 9250  PRINT:PRINT "INPUT 1 TO REPEAT INTEGRAL COMPUTATION."
  56. 9251  PRINT "INPUT 2 TO GO TO GENERAL MATH MENU.";
  57. 9255  INPUT N
  58. 9260  IF N=1 THEN GOTO 9155
  59. 9265  IF N=2 THEN GOTO 9000
  60. 9270  PRINT:PRINT "INVALID INPUT"
  61. 9275  GOTO 9250
  62. 9280  PRINT "PUT EQUATION TO BE INTEGRATED ON LINE 9280"
  63. 9285  RETURN
  64. 9290  CLS
  65. 9295  CLEAR
  66. 9300  PRINT "SIMULTANEOUS EQUATIONS"
  67. 9303  PRINT
  68. 9305  PRINT "INPUT NUMBER OF EQUATIONS";
  69. 9310  INPUT M
  70. 9315  DIM A(M,M+2)
  71. 9320  FOR Y=1 TO M
  72. 9325  FOR X=1 TO M
  73. 9330  CLS
  74. 9335  PRINT "INPUT COEFFICIENT OF X";X;" OF EQUATION ";Y;
  75. 9340  INPUT S
  76. 9345  A(Y,X)=S
  77. 9350  NEXT X
  78. 9355  CLS
  79. 9360  PRINT "INPUT CONSTANT OF EQUATION ";Y;
  80. 9365  INPUT S
  81. 9370  A(Y,M+1)=S
  82. 9375  NEXT Y
  83. 9380  CLS
  84. 9385  PRINT "THE EQUATIONS YOU HAVE ENTERED ARE:"
  85. 9390  FOR Y=1 TO M
  86. 9395  FOR X=1 TO M
  87. 9400  PRINT A(Y,X);" ";
  88. 9405  NEXT X
  89. 9410  PRINT " = ";A(Y,M+1)
  90. 9415  NEXT Y
  91. 9420  PRINT:PRINT "INPUT 1 TO PROCEED, 2 TO MAKE CHANGE";
  92. 9425  INPUT N
  93. 9430  IF N=1 THEN GOTO 9490
  94. 9435  IF N=2 THEN GOTO 9450
  95. 9440  PRINT:PRINT "INVALID INPUT"
  96. 9445  GOTO 9420
  97. 9450  PRINT "INPUT EQUATION NUMBER YOU WISH TO CHANGE";
  98. 9455  INPUT Y
  99. 9460  PRINT "INPUT COEFFICIENT NUMBER TO CHANGE(";M+1;" FOR CONSTANT)"
  100. 9465  INPUT X
  101. 9470  PRINT "INPUT NEW VALUE FOR COEFFICIENT ";X:", EQUATION ";Y;
  102. 9475  INPUT S
  103. 9480  A(Y,X)=S
  104. 9485  GOTO 9380
  105. 9490  CLS
  106. 9495  PRINT "COMPUTING"
  107. 9500  K=0
  108. 9505  Y=1 TO M
  109. 9510  A(Y,M+2)=1
  110. 9515  NEXT Y
  111. 9520  L=1 TO M
  112. 9525  K=K+1
  113. 9530  IF A(L,K)<>0 OR L<>M THEN GOTO 9545
  114. 9535  K=K+1
  115. 9540  GOTO 9530
  116. 9545  IF A(L,K)=0 AND L<>M THEN GOTO 9730
  117. 9550  FOR X=M+1 TO 1 STEP -1
  118. 9555  A(L,X)=A(L,X)/A(L,K)
  119. 9560  NEXT X
  120. 9565  FOR J=1 TO M
  121. 9570  IF J=L THEN GOTO 9595
  122. 9575  FOR X=M+1 TO 1 STEP -1
  123. 9580  A(J,X)=A(J,X)-A(J,K)*A(L,X)
  124. 9585  IF ABS(A(J,X)) < ABS(A(J,X+1))/10000 THEN A(J,X)=0
  125. 9590  NEXT X
  126. 9595  NEXT J
  127. 9600  NEXT L
  128. 9605  CLS
  129. 9610  FOR Y=1 TO M
  130. 9615  S=0
  131. 9620  FOR X=1 TO M
  132. 9625  IF A(Y,X)<>0 THEN S=1
  133. 9630  NEXT X
  134. 9635  IF S=0 AND A(Y,M+1)<>0 THEN GOTO 9800
  135. 9640  NEXT Y
  136. 9645  FOR L=1 TO M
  137. 9650  IF A(L,L)<>1 THEN GOTO 9790
  138. 9655  NEXT L
  139. 9660  FOR Y=1 TO M
  140. 9665  FOR X=1 TO M
  141. 9670  IF X<>Y AND A(Y,X)<>0 THEN GOTO 9790
  142. 9675  NEXT X
  143. 9680  NEXT Y
  144. 9685  FOR Y=1 TO M
  145. 9690  PRINT "X";Y;" = ";A(Y,M+1)
  146. 9695  NEXT Y
  147. 9700  PRINT:PRINT "INPUT 1 TO REPEAT SIMULTANEOUS EQUATIONS COMPUTATION."
  148. 9701  PRINT "INPUT 2 TO GO TO GENERAL MATH MENU";
  149. 9705  INPUT N
  150. 9710  IF N=1 THEN GOTO 9290
  151. 9715  IF N=2 THEN GOTO 9000
  152. 9720  PRINT:PRINT "INVALID INPUT"
  153. 9725  GOTO 9700
  154. 9730  FOR H=L+1 TO M
  155. 9735  IF A(H,K)<>0 THEN GOTO 9760
  156. 9740  NEXT H
  157. 9745  K=K+1
  158. 9750  IF K>M+1 THEN GOTO 9605
  159. 9755  GOTO 9530
  160. 9760  FOR G=1 TO M+1
  161. 9765  T=A(L,G)
  162. 9770  A(L,G)=A(H,G)
  163. 9775  A(H,G)=T
  164. 9780  NEXT G
  165. 9785  GOTO 9530
  166. 9790  PRINT "EQUATIONS NOT INDEPENDENT"
  167. 9795  GOTO 9700
  168. 9800  PRINT "EQUATIONS CONTRADICTORY"
  169. 9805  GOTO 9700
  170.