1 DIM A(5,5),B(5,5)
5 PRINT "ENTER N": INPUT N 
10 PRINT : PRINT "ENTER MATRIX" 
15 FOR I=1 TO N: PRINT : PRINT "COL";I
20 FOR J=1 TO N: INPUT A(J,I),B(J,I): NEXT J 
25 NEXT I
30 D1,I1=1: D2=0 
35 I3=I1: S=ABS(A(I1,I1))+ABS(B(I1,I1))
40 FOR I=I1 TO N: T=ABS(A(I,I1))+ABS(B(I,I1))
45 IF S>=T THEN 50: I3=I: S=T
50 NEXT I: IF I3=I1 THEN 75
55 FOR J=1 TO N
60 S=-A(I1,J): A(I1,J)=A(I3,J): A(I3,J)=S
65 S1=-B(I1,J): B(I1,J)=B(I3,J): B(I3,J)=S1
70 NEXT J
75 I3=I1+1 
80 FOR I=I3 TO N: S1=A(I1,I1)^2+B(I1,I1)^2 
85 S=(A(I,I1)*A(I1,I1)+B(I,I1)*B(I1,I1))/S1
90 B(I,I1)=(A(I1,I1)*B(I,I1)-A(I,I1)*B(I1,I1))/S1
95 A(I,I1)=S: NEXT I 
100 J2=I1-1: IF J2=0 THEN 150
110 FOR J=I3 TO N: FOR I=1 TO J2 
120 A(I1,J)=A(I1,J)-A(I1,I)*A(I,J)+B(I1,I)*B(I,J)
130 B(I1,J)=B(I1,J)-B(I1,I)*A(I,J)-A(I1,I)*B(I,J)
140 NEXT I: NEXT J 
150 J2=I1: I1=I1+1 
160 FOR I=I1 TO N: FOR J=1 TO J2 
170 A(I,I1)=A(I,I1)-A(I,J)*A(J,I1)+B(I,J)*B(J,I1)
180 B(I,I1)=B(I,I1)-B(I,J)*A(J,I1)-A(I,J)*B(J,I1)
190 NEXT J: NEXT I 
200 IF I1<>N THEN 35: I3=1: J2=INT(N/2)
210 IF N=2*J2 THEN 230: I3=0 
220 D1=A(N,N): D2=B(N,N) 
230 FOR I=1 TO J2: J=N-I+I3
240 S=A(I,I)*A(J,J)-B(I,I)*B(J,J)
250 S1=A(I,I)*B(J,J)+A(J,J)*B(I,I) 
260 T=D1*S-D2*S1: D2=D2*S+D1*S1: D1=T
270 NEXT I: PRINT 
280 PRINT "DETERMINANT:";D1;"+I*";D2: PRINT 
290 END 

