Okulda bize bir derste qbasi gösteriyorlar ve öğretmenimiz bize bir ödew werdi. matris inversi yöntemi ile matris çözümü. Bu yolla linner çok bilinmeyenli denklem çözeceğiz. Şöyle olacak |A|*|x|=|B| burda A nın inversini alıp b ile çarpıp x'i yani bilinmeyenler matrisini bulcaz.
Öğretmen inversini almayı yazdırdı. Şöyle oluyor;
10 CLS
20 REM matris inversi
30 n = 3
40 DIM a(n, n), b(n, n)
50 FOR I = 1 TO n: FOR j = 1 TO n
60 READ a(I, j)
70 PRINT a(I, j)
80 NEXT j: PRINT: NEXT I
90 REM "b=inv(a)"
100 FOR I = 1 TO n
110 b(I, I) = 1
120 NEXT I
130 FOR I = 1 TO n
140 t = a(I, I)
150 FOR K = 1 TO n
160 a(I, K) = a(I, K) / t
170 b(I, K) = b(I, K) / t
180 NEXT K
190 FOR j = 1 TO n
200 p = a(j, I)
210 IF j = 1 THEN 260
220 FOR K = 1 TO n
230 a(j, K) = a(j, K) - p * a(j, K)
240 b(j, K) = b(j, K) - p * b(j, K)
250 NEXT K
260 NEXT j, I
270 PRINT "b matrisi"
280 FOR I = 1 TO n: FOR I = 1 TO n
290 PRINT USING "####.##"; b(I, j);
300 NEXT I: PRINT: NEXT I
310 DATA 2,3,3,-1,2,3,1,-1,2
Ama ben yazdım Line:29 Subscribt out of range hatası verio. neden anlayamadım.
bunun sonuna çarpımı ekleyip yapacağız sanırım.
Yardım ederseniz çok sewinirim.