#include <stdio.h> void bii(b,a,n) INT n; FLOAT b[n][n]; FLOAT a[n][n]; { INT i; FOR (i = 1; i <= n; i++) { b[i][i] = 1/a[i][i]; printf("b[%d][%d]=%f\n",i,i,b[i][i]); } } void bij(b,a,n) INT n; FLOAT b[n][n]; FLOAT a[n][n]; { INT i,j; FOR (i = 2; i <= n; i++) { FOR (j = i-1; j < n; j++) { IF(i!=j && i>j) { b[i][j]=(-(a[i][j]*b[j][j])/a[i][i]); printf("b[%d][%d]=%f\n",i,j,b[i][j]); } } } } void bij2(b,a,n) INT n; FLOAT b[n][n]; FLOAT a[n][n]; { INT i,j,w; FLOAT suma; FOR(i = 3; i <= n; i++) { FOR(j = i-2; j >= 1; j--) { suma = 0; FOR(w = j; w <= i-1; w++) { suma += a[i][w]*b[w][j]; } b[i][j] = -(suma/a[i][i]); printf("b[%d][%d]=%f\n",i,j,b[i][j]); } } } void zera(b,n) INT n; FLOAT b[n][n]; { INT i,j; FOR (i = 1; i <= n; i++) { FOR (j = 1; j <= n; j++) { b[i][j]=0; } } } void wczytaj(a,n) INT n; FLOAT a[n][n]; { INT i,j; FOR (i = 1; i <= n; i++){ FOR (j = 1; j <= n; j++){ printf("podaj wartosc dla a[%d][%d]", i, j); scanf("%f", &a[i][j]); } printf("\n"); } } void wypisz (a,n) INT n; FLOAT a[n][n]; { INT i,j; FOR (i = 1; i <= n; i++) { FOR (j = 1; j <= n; j++) { printf("%f ", a[i][j]); } printf("\n"); } } INT main(){ INT N; printf("Podaj liczbe wierszy i kolumn: "); scanf("%d", &N); FLOAT A[N][N]; FLOAT B[N][N]; wczytaj(A,N); printf("\n"); printf("Macierz wyjsciowa : \n"); wypisz(A,N); printf("\n"); zera(B,N); bii(B,A,N); printf("\n"); bij(B,A,N); printf("\n"); bij2(B,A,N); printf("\n"); printf("Macierz odwrotna do macierzy wyjsciowej: \n"); wypisz(B,N); RETURN 0; }