REM this is Program CRAMERS3.BAS, A program to calculate the REM solutions to 3 simultaneous linear equations in 3 unknowns REM using Cramer's Rule of substitution to form 3X3 Determinates REM REM THIS PROGRAM WAS WRITEN BY MICHAEL P. FINERTY 10/18/84 REM ************************************************************ 10 REM REM A(N)*X1 + B(N)*X2 + C(N)*X3 = D IS AN EQUATION IN 3 UNKNOWNS VAR DET, DET0, DET1, DET2, DET3 = REAL.DOUBLE VAR A$ = STRING VAR N = INTEGER REM DIM COM REAL.DOUBLE A(3) B(3) C(3) D(3) X(3) Y(3) Z(3) REM REM READ IN VALUES OF A,B,C&D FOR EACH OF THE EQUATIONS REM FOR N = 1 TO 3 PRINT "PLEASE INPUT A(";N;")" INPUT A(N) PRINT "PLEASE INPUT B(";N;")" INPUT B(N) PRINT "PLEASE INPUT C(";N;")" INPUT C(N) PRINT "PLEASE INPUT D(";N;")" INPUT D(N) NEXT N FOR N = 1 TO 3 X(N) = A(N) Y(N) = B(N) Z(N) = C(N) NEXT N REM GOSUB 100 REM DET0 = DET IF DET0 = 0 THEN PRINT "INCONSISTANT EQUATIONS, NO SOLUTION" IF DET0 = 0 THEN 200 FOR N = 1 TO 3 X(N) = D(N) Y(N) = B(N) Z(N) = C(N) NEXT N REM GOSUB 100 REM DET1 = DET PRINT "X1 = "; DET1/DET0 REM FOR N = 1 TO 3 X(N) = A(N) Y(N) = D(N) Z(N) = C(N) NEXT N REM GOSUB 100 REM DET2 = DET PRINT "X2 =";DET2/DET0 REM FOR N = 1 TO 3 X(N) = A(N) Y(N) = B(N) Z(N) = D(N) NEXT N REM GOSUB 100 REM DET3 = DET REM PRINT "X3 = ";DET3/DET0 REM 200 REM PRINT "DO YOU WISH TO SOLVE ANOTHER SET OF EQUATIONS? Y/N?" INPUT A$ IF A$ = "y" OR A$ = "Y" THEN 10 END 100 REM SUBROUTINE TO CALCULATE DETERMINATES FROM X(N),Y(N) AND REM Z(N) REM DET = X(1)*Y(2)*Z(3) + X(2)*Y(3)*Z(1) + X(3)*Y(1)*Z(2) DET = DET - X(3)*Y(2)*Z(1) - X(1)*Y(3)*Z(2) - X(2)*Y(1)*Z(3) RETURN