#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; }