wiktortokumpel

macierze wronoson

Mar 15th, 2022 (edited)
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.67 KB | None | 0 0
  1. #include <iostream>
  2. #include <vector>
  3. using namespace std;
  4.  
  5. class Macierz
  6. {
  7. int m;
  8. int n;
  9. int **tab;
  10. public:
  11. Macierz(int chor,int ver)
  12. {
  13. m=chor;
  14. n=ver;
  15. alokuj();
  16. }
  17. void alokuj()
  18. {
  19. tab =new int*[m]; //dla tablicy 3d byłoby ***tab;
  20. for (int i = 0; i < m; ++i)
  21. {
  22. tab[i]=new int[n];
  23. }
  24.  
  25. } //zarezerwowanie pamięci macierzy
  26. void wczytaj()
  27. {
  28. for (int i = 0; i < m; ++i)
  29. {
  30. for (int j = 0; j < n; ++j) {
  31. cin>>tab[i][j];
  32. }
  33.  
  34. }
  35. } //wczytanie macierzy do struktury
  36. void wyswietl(){
  37. for (int i = 0; i < m; ++i)
  38. {
  39. for (int j = 0; j < n; ++j) {
  40. cout<<tab[i][j]<<" ";
  41. }
  42. cout<<endl;
  43. }
  44. } //wyswietlenie macierzy
  45. Macierz dodaj (Macierz &b)
  46. {
  47. Macierz c(m,n);
  48.  
  49.  
  50. for(int i=0;i<m;i++){
  51. for (int j = 0; j < n; ++j) {
  52. c.tab[i][j]=tab[i][j]+b.tab[i][j];
  53. }
  54. }
  55. return c;
  56. };
  57.  
  58. Macierz odejmij (Macierz &b)
  59. {
  60. Macierz d(m,n);
  61.  
  62.  
  63. for(int i=0;i<m;i++){
  64. for (int j = 0; j < n; ++j) {
  65. d.tab[i][j]=tab[i][j]-b.tab[i][j];
  66. }
  67. }
  68. return d;
  69. };
  70. Macierz mnozenie (Macierz &b)
  71. { Macierz e(m,n);
  72.  
  73.  
  74. for (int i = 0; i < m; i++) {
  75. for (int j = 0; j < n; j++) {
  76.  
  77. for (int k = 0; k < b.m; k++) {
  78. e.tab[i][j] += tab[i][k] * b.tab[k][j];
  79. }
  80.  
  81. }
  82. }
  83. return e;
  84.  
  85. };
  86. };
  87.  
  88.  
  89.  
  90. int main()
  91. {
  92. Macierz a(2,2); //a.m=3;a.n=3;a.tab=NULL
  93. a.alokuj();
  94. Macierz b(2,2);
  95. b.alokuj();
  96.  
  97.  
  98. //*****************************************************************************
  99. //wczytanie funkcji
  100. cout<<"podaj wartosc tablicy 1: ";
  101. cout<<endl;
  102. a.wczytaj();
  103.  
  104. cout<<endl;
  105.  
  106. cout<<"podaj wartosc tablicy 2: ";
  107. cout<<endl;
  108. b.wczytaj();
  109.  
  110.  
  111. //******************************************************************************
  112. //Wyświetlanie funkcji
  113. cout<<"tablica 1 zawiera liczby: ";
  114. cout<<endl;
  115. a.wyswietl();
  116.  
  117. cout<<"tablica 2 zawiera liczby: ";
  118. cout<<endl;
  119. b.wyswietl();
  120.  
  121. Macierz c=a.dodaj(b);
  122. cout<<"Macierz wynikowa dodawania:"<<endl;
  123. c.wyswietl();
  124.  
  125. Macierz d=a.odejmij(b);
  126. cout<<"Macierz wynikowa odejmowania:"<<endl;
  127. d.wyswietl();
  128.  
  129. Macierz e=a.mnozenie(b);
  130. cout<<"Macierz wynikowa mnożenia:"<<endl;
  131. e.wyswietl();
  132.  
  133. return 0;
  134. }
  135.  
  136.  
  137.  
  138.  
  139.  
  140.  
Add Comment
Please, Sign In to add comment