fork download
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. class Lol
  5. {
  6. public:
  7. int **Arr;
  8. void Create(int a,int b);
  9. void Transp(int a,int b);
  10. private:
  11. void Out(int a,int b);
  12. };
  13.  
  14. void Lol::Create(int a,int b)
  15. {
  16. Arr=new int*[a];
  17. for(int i=0;i<a;i++)
  18. {
  19. Arr[i]=new int[b];
  20. }
  21.  
  22. for(int i=0;i<a;i++)
  23. {
  24. for(int j=0;j<b;j++)
  25. {
  26. cout << endl<< "Введите число в ячейку " << i+1 << "," << j+1 << ": ";
  27. cin >> Arr[i][j];
  28. }
  29. }
  30. cout << endl << endl;
  31. Out(a,b);
  32. }
  33.  
  34. void Lol::Transp(int a,int b)
  35. {
  36. int ** secondArr = new int*[b];
  37. for(int i=0;i<b;i++)
  38. {
  39. secondArr[i] = new int[a];
  40. }
  41. for(int i=0;i<b;i++)
  42. {
  43. for(int j=0;j<a;j++)
  44. {
  45. secondArr[i][j]=Arr[j][i];
  46. }
  47. }
  48. for(int i=0;i<a;i++)
  49. {
  50. delete[] Arr[i];
  51. }
  52. delete[] Arr;
  53.  
  54. Arr = new int*[b];
  55. for(int i=0;i<b;i++)
  56. {
  57. Arr[i]=new int[a];
  58. }
  59.  
  60. for(int i=0;i<b;i++)
  61. {
  62. for(int j=0;j<a;j++)
  63. {
  64. Arr[i][j]=secondArr[i][j];
  65. }
  66. }
  67. for(int i=0;i<a;i++)
  68. {
  69. delete [] secondArr[i];
  70. }
  71. delete[] secondArr;
  72. cout << endl << endl;
  73. Out(b,a);
  74. }
  75.  
  76. void Lol::Out(int a,int b)
  77. {
  78. for(int i=0;i<b;i++)
  79. {
  80. for(int j=0;j<a;j++)
  81. {
  82. cout<<"| " << Arr[i][j] << " ";
  83. }
  84. cout <<"|"<< endl;
  85. }
  86. }
  87.  
  88. int main()
  89. {
  90. int a=0;
  91. int b=0;
  92. cout << "Введите количество строк матрицы: ";
  93. cin >> a;
  94. cout << endl << "Введите количество столбцов матрицы: ";
  95. cin >> b;
  96. Lol arr1;
  97. arr1.Create(a,b);
  98. arr1.Transp(a,b);
  99. return 0;
  100. }
Runtime error #stdin #stdout 0s 3476KB
stdin
4
2
1
2
3
4
5
6
7
8
stdout
Введите количество строк матрицы: 
Введите количество столбцов матрицы: 
Введите число в ячейку 1,1: 
Введите число в ячейку 1,2: 
Введите число в ячейку 2,1: 
Введите число в ячейку 2,2: 
Введите число в ячейку 3,1: 
Введите число в ячейку 3,2: 
Введите число в ячейку 4,1: 
Введите число в ячейку 4,2: 

| 1 | 2 | 0 | 17 |
| 3 | 4 | 0 | 17 |