Advertisement
Guest User

Untitled

a guest
Jan 19th, 2020
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.13 KB | None | 0 0
  1. #include <iostream>
  2. #include <time.h>
  3. const int cols = 5;
  4. void initmas(int** B, int cols, int rows);
  5. void cyclemovevert(int** B, int cols, int rows);
  6. void printmas(int** B, int cols, int rows);
  7. void cyclemovevert1(int** B, int cols, int rows);
  8. void print_static(int A[][M], int n);
  9.  
  10. void init_static(int A[][M], int n);
  11.  
  12.  
  13. void swap(int* a, int* b);
  14. int main()
  15. {
  16. srand(time(NULL));
  17.  
  18. const int rows = 10;
  19. int A[rows][cols];
  20. /*init_static(A, N);
  21. print_static(A, N);*/
  22.  
  23.  
  24.  
  25. int** B = (int**)malloc(sizeof(int*) * rows);
  26. for (int i = 0; i < rows; i++)
  27. {
  28. B[i] = (int*)malloc(sizeof(int) * cols);
  29. }
  30.  
  31. initmas(B, cols, rows);
  32. printmas(B, cols, rows);
  33. cyclemovevert(B, cols, rows);
  34. printf("\n");
  35.  
  36.  
  37. //printmas(B, cols, rows);
  38.  
  39.  
  40. for (int i = 0; i <rows; i++)
  41. {
  42. free(B[i]);
  43. }
  44. free(B);
  45. return 0;
  46. }
  47.  
  48. void init_static(int A[][M], int n)
  49. {
  50. for (int i = 0; i < n; i++)
  51. {
  52. for (int j = 0; j < M; j++)
  53. {
  54. A[i][j] = rand() % 100;
  55. }
  56. }
  57. return;
  58. }
  59.  
  60. void print_static(int A[][M], int n)
  61. {
  62. printf("static matrix\n");
  63. for (int i = 0; i < n; i++)
  64. {
  65. for (int j = 0; j < M; j++)
  66. {
  67. printf("%3d", A[i][j]);
  68. }
  69. printf("\n");
  70. }
  71. printf("\n");
  72. return;
  73. }
  74.  
  75. void initmas(int** B, int rows, int cols)
  76. {
  77. for (int i = 0; i < cols; i++)
  78. {
  79. for (int j = 0; j < rows; j++)
  80. {
  81. B[i][j] = rand() % 100;
  82. }
  83. }
  84. }
  85.  
  86. void printmas(int** B, int rows, int cols)
  87. {
  88. for (int i = 0; i < cols; i++)
  89. {
  90. for (int j = 0; j < rows; j++)
  91. {
  92. printf("%3d", B[i][j]);
  93. }
  94. printf("\n");
  95. }
  96. }
  97.  
  98. void cyclemovevert(int** B, int cols, int rows)
  99. {
  100. for (int i = 0; i < cols; i++)
  101. {
  102. if (i % cols == 0)
  103. break;
  104. else
  105. {
  106. for (int k = i; k > 0; k--)
  107. {
  108. for (int j = 1; j < rows; j++)
  109. {
  110. swap(&B[j][i], &B[j - 1][i]);
  111. }
  112. }
  113. }
  114. }
  115. }
  116.  
  117. void cyclemovevertdown(int** B, int cols, int rows)
  118. {
  119. for (int i = cols-1; i >0; i--)
  120. {
  121. for (int k = i; k > 0; k--)
  122. {
  123. for (int j = 1; j < rows; j++)
  124. {
  125. swap(&B[j][i], &B[j - 1][i]);
  126. }
  127. }
  128. }
  129.  
  130. }
  131.  
  132.  
  133.  
  134. void swap(int* a, int *b)
  135. {
  136. int temp = *a;
  137. *a =*b;
  138. *b = temp;
  139.  
  140. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement