Advertisement
Guest User

Untitled

a guest
Oct 21st, 2019
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.55 KB | None | 0 0
  1. #include<stdio.h>
  2. #include<stdlib.h>
  3.  
  4. double wyznacznik(int x, double macierz[x][x])
  5. {
  6. if(x == 1)
  7. {
  8. return macierz[0][0];
  9. }
  10. else
  11. {
  12. double wyz = 0;
  13. int i;
  14. int wiersz;
  15. int kolumna;
  16. int iy;
  17. int jy;
  18. for(i = 0; i < x; i++)
  19. {
  20. if(macierz[0][i] != 0)
  21. {
  22. double y[x-1][x-1];
  23. iy = 0;
  24. jy = 0;
  25. for(wiersz = 0; wiersz < x; wiersz++)
  26. {
  27. for(kolumna = 0; kolumna < x; kolumna++)
  28. {
  29. if(kolumna != i)
  30. {
  31. y[iy][jy] = macierz[wiersz][kolumna];
  32. jy++;
  33. }
  34. }
  35. iy++;
  36. jy = 0;
  37. }
  38. double wspolczynnik;
  39. if(i % 2 == 0)
  40. {
  41. wspolczynnik = macierz[0][i];
  42. }
  43. else
  44. {
  45. wspolczynnik = (-1) * macierz[0][i];
  46. }
  47. wyz = wyz + wspolczynnik * wyznacznik(x - 1, y);
  48. }
  49. }
  50. return wyz;
  51. }
  52. }
  53.  
  54. int main()
  55. {
  56. double m[3][3] = {{1, 6, 3}, {2, 3, 4}, {6, 2, 9}};
  57. printf("%.3f\n", wyznacznik(3, m));
  58. return 0;
  59. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement