fork download
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. void FillMatrix(int mat[501][501], short matOrder)
  5. {
  6. for (int i = 0; i < matOrder; i++)
  7. {
  8. for (int j = 0; j < matOrder; j++)
  9. cin >> mat[i][j];
  10. }
  11. }
  12.  
  13. void SwapRowsInMatrix(int mat[501][501], int MatOrder, int X, int Y)
  14. {
  15. X--;
  16. Y--;
  17.  
  18. if (X != Y)
  19. {
  20. for (int i = 0; i < MatOrder; i++)
  21. {
  22. int temp = mat[Y][i];
  23. mat[Y][i] = mat[X][i];
  24. mat[X][i] = temp;
  25. }
  26. }
  27. }
  28.  
  29. void SwapColsInMatrix(int mat[501][501], int MatOrder, int X, int Y)
  30. {
  31. X--;
  32. Y--;
  33.  
  34. if (X != Y)
  35. {
  36. for (int i = 0; i < MatOrder; i++)
  37. {
  38. int temp = mat[i][Y];
  39. mat[i][Y] = mat[i][X];
  40. mat[i][X] = temp;
  41. }
  42. }
  43. }
  44.  
  45. void PrintMatrix(int mat[501][501], short MatOrder)
  46. {
  47. for (int i = 0; i < MatOrder; i++)
  48. {
  49. for (int j = 0; j < MatOrder; j++)
  50. cout << mat[i][j] << " ";
  51.  
  52. cout << endl;
  53. }
  54.  
  55. }
  56.  
  57. int main()
  58. {
  59. int mat[501][501];
  60.  
  61. int MatOrder, X, Y;
  62.  
  63. cin >> MatOrder >> X >> Y;
  64.  
  65. FillMatrix(mat, MatOrder);
  66.  
  67. SwapRowsInMatrix(mat, MatOrder, X, Y);
  68.  
  69. SwapColsInMatrix(mat, MatOrder, X, Y);
  70.  
  71. PrintMatrix(mat, MatOrder);
  72.  
  73.  
  74. return 0;
  75. }
Success #stdin #stdout 0.01s 5288KB
stdin
4 3 1
1 2 3 -5
-5 4 0 3
7 7 1 2
40 6 5 11
stdout
1 7 7 2 
0 4 -5 3 
3 2 1 -5 
5 6 40 11