home *** CD-ROM | disk | FTP | other *** search
GW-BASIC | 1989-01-07 | 3.0 KB | 89 lines |
- 200 REM SIMULTANEOUS EQUATIONS
- 201 CLS
- 202 PRINT "THIS PROGRAM SOLVES SIMULTANEOUS LOOP EQUATIONS."
- 203 INPUT "WOULD YOU LIKE TO SOLVE FOR 2 OR 3 VARIABLES? ",N
- 204 IF N = 2 OR N = 3 THEN 209
- 205 PRINT
- 206 PRINT THIS PROGRAM WILL ON;Y SOLVE FOR 2 OR 3 VARIABLES."
- 207 INPUT "PLEASE TRY AGAIN.",N
- 208 GOTO 204
- 209 A$ = "123"
- 210 IF N = 3 THEN 247
- 211 REM SOLVING FOR TWO VARIABLES
- 212 PRINT
- 213 PRINT "THIS PROGRAM WILL SOLVE TQO SIMULTANEOUS EQUATIONS."
- 214 PRINT " V1 = ?I1 + ?I2"
- 215 PRINT " V2 = ?I2 + ?I2"
- 216 PRINT "FOR THE VARIABLE I1 AND I2"
- 217 PRINT "(QUESTION MARKS REPRESENT COEFFICIENTS TO BE ENTERED.)"
- 218 PRINT
- 219 PRINT "PLEASE ENTER THE FOLLOWING DATA IN BASE UNITS."
- 220 PRINT
- 221 DIM C(1,1), V(1)
- 222 FOR I = 0 TO 1
- 223 FOR J = O TO 1
- 224 IF J > 0 THEN 228
- 225 PRINT "EQUATION NUMBER";I + 1; ":"
- 226 PRINT " V"; MID$(A$,J +1, 1);
- 227 INPUT " : ", V(I)
- 228 PRINT " COEFFICIENT OF I"; MID$(A$,J + 1, 1);
- 229 INPUT " : ", C(I,J)
- 230 NEXT J
- 231 NEXT I
- 232 PRINT
- 233 PRINT
- 234 DET = C(0,0)*C(1,1) - C(0,1)*C(1,0) ' DETERMINANT OF MATRIX C
- 235 IF DET <> 0 THEN 237
- 236 PRINT "YOUR LOOP EQUATIONS ARE IN ERRE." : END
- 237 DETI1 = V(0)*C(1,1) - C(0,1)*V(1) ' DETERMINANT FOR CAMER'S RULE
- 238 DETI2 = C(0,0)*V(1) - V(0)*C(1,0)
- 239 PRINT "ANSWERS:"
- 240 PRINT
- 241 PRINT " I1 is"; DETI1 / DET
- 242 PRINT " I2 is"; DETI2 / DET
- 243 PRINT
- 244 PRINT " (A NEGATIVE VALUE INDICATES THE ASSUMED"
- 245 PRINT " DIRECTION OF CURRENT WAS INCORRECT.)"
- 246 GOTO 290
- 247 REM SOLVING FOR THREE VARIABLES
- 248 PRINT
- 249 PRINT " THIS PROGRAM WILL SOLVE THE SIMULANEOUS EQUATIONS"
- 250 PRINT " V1 = ?I1 + ?I2 + ?I3"
- 251 PRINT " V2 = ?I1 + ?I2 + ?I3"
- 252 PRINT " V3 = ?I1 + ?I2 + ?I3"
- 253 PRINT " FOR THE VARIABLES I1, I2, AND I3"
- 254 PRINT " QUESTION MARKS REPRESENT COEFFICIENTS TO BE ENTERED."
- 255 PRINT
- 256 PRINT " PLEASE ENTER THE FOLLOWING DATA IN BASE UNITS."
- 257 PRINT "(IF A VARIABLE IS NOT PRESENT IN AN EQUATION, ENTER"
- 258 PRINT " A ZERO FOR ITS COEFFICIENT.)"
- 259 PRINT
- 260 DIM C(2,2), V(2)
- 261 FOR I = 0 TO 2
- 262 FOR J = 0 TO 2
- 263 IF J > 0 THEN 267
- 264 PRINT "EQUATION NUMBER"; I + 1; ":"
- 265 PRINT " V"; MID$(A$,I + 1, 1);
- 266 INPUT ": ", V(I)
- 267 PRINT " COEFFICIENT OF I"; MID$(A$,J+1,1);
- 268 INPUT ": ", C(I,J)
- 269 NEXT J
- 270 NEXT I
- 271 PRINT
- 272 PRINT
- 273 DET = C(0,0)*C(1,1)*C(2,2) + C(0,1)*C(1,2)*C(2,0) + C(0,2)*C(1,0)*C(2,1) - C(0,2)*C(1,1)*C(2,0) - C(0,1)*C(1,0)*C(2,2) - C(0,0)*C(1,2)*C(2,1)
- 274 IF DET <> 0 THEN 276
- 275 PRINT "YOUR LOOP EQUATIONS ARE IN ERROR.": END
- 276 DETI1 = V(0)*C(1,1)*C(2,2)+ C(0,1)*C(1,2)*V(2) + C(0,2)*V(1)*C(2,1) - C(0,2)*C(1,1)*V(2) - C(0,1)*V(1)*C(2,2) - V(0)*C(1,2)*C(2,1)
- 277 DETI2 = C(0,0)*V(1)*C(2,2) + V(0)*C(1,2)*C(2,0) + C(0,2)*C(1,0)*V(2) - C(0,2)*V(1)*C(2,0) - V(0)*C(1,0)*C(2,2) - C(0,0)*C(1,2)*V(2)
- 278 DETI3 = C(0,0)*C(1,1)*V(2) + C(0,1)*V(1)*C(2,0) + V(0)*C(1,0)*C(2,1) - V(0)*C(1,1)*C(2,0) - C(0,1)*C(1,0)*V(2) - C(0,0)*V(1)*C(2,1)
- 279 PRINT " ANSWERS:"
- 280 PRINT
- 281 PRINT " I1 is"; DETI1 / DET
- 282 PRINT " I2 is"; DETI2 / DET
- 283 PRINT " I3 is"; DETI3 / DET
- 284 PRINT
- 285 PRINT "(A NEGATIVE VALUE INDICATES THAT THE ASSUMED"
- 286 PRINT " DIRECTION OF CURRENT WAS INCORRECT.)"
- 290 LOCATE 25,20: INPUT ; "MORE CALCULATIONS (Y/N) ",A$: IF A$="Y" OR A$="y" THEN RUN 200 ELSE IF A$="N" OR A$="n" THEN RUN "MENU1"
-