Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<stdio.h>
- #include<stdlib.h>
- double wyznacznik(int x, double macierz[x][x])
- {
- if(x == 1)
- {
- return macierz[0][0];
- }
- else
- {
- double wyz = 0;
- int i;
- int wiersz;
- int kolumna;
- int iy;
- int jy;
- for(i = 0; i < x; i++)
- {
- if(macierz[0][i] != 0)
- {
- double y[x-1][x-1];
- iy = 0;
- jy = 0;
- for(wiersz = 0; wiersz < x; wiersz++)
- {
- for(kolumna = 0; kolumna < x; kolumna++)
- {
- if(kolumna != i)
- {
- y[iy][jy] = macierz[wiersz][kolumna];
- jy++;
- }
- }
- iy++;
- jy = 0;
- }
- double wspolczynnik;
- if(i % 2 == 0)
- {
- wspolczynnik = macierz[0][i];
- }
- else
- {
- wspolczynnik = (-1) * macierz[0][i];
- }
- wyz = wyz + wspolczynnik * wyznacznik(x - 1, y);
- }
- }
- return wyz;
- }
- }
- int main()
- {
- double m[3][3] = {{1, 6, 3}, {2, 3, 4}, {6, 2, 9}};
- printf("%.3f\n", wyznacznik(3, m));
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement