|
Массивы и функции
|
|||
---|---|---|---|
#18+
Помогите пожалуйста решить проблему: мне нужно переделать следующий код так чтоб он был написан через функции, это рабочий код, и вон задания к нему: Осуществить циклический сдвиг элементов прямоугольной матрицы на п элементов вправо или вниз (в зависимости от введенного режима), п может быть больше количества элементов в строке или столбце. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81.
... |
|||
:
Нравится:
Не нравится:
|
|||
25.10.2018, 22:50 |
|
Массивы и функции
|
|||
---|---|---|---|
#18+
чтобы немного упростить задачу, советую n = n % m, чтобы не гонять матрицу кругами. во-вторых, в чём, собственно, проблема, что не получается или непонятно? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.10.2018, 05:24 |
|
Массивы и функции
|
|||
---|---|---|---|
#18+
CEMb, надо же две функции по отдельности создавать или можно одну? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.10.2018, 07:21 |
|
Массивы и функции
|
|||
---|---|---|---|
#18+
GomnCEMb, надо же две функции по отдельности создавать или можно одну? void or int? Не, погоди, для начала надо понять как и зачем . Функции используют для выполнения одинакового кода с разными параметрами. Я смотрю в код, и мне в глаза кидается сразу один фрагмент, точнее два одинаковых. Код внутри циклов выполняет одну работу - меняет 2 значения местами, занимает три строчки. Почему бы его не вынести в отдельную функцию? И так далее, ты можешь оформить функциями всё, что тебе кажется уместным. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.10.2018, 11:47 |
|
Массивы и функции
|
|||
---|---|---|---|
#18+
CEMb, вот так? можете подкорректировать код(если не правильно) Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97.
... |
|||
:
Нравится:
Не нравится:
|
|||
26.10.2018, 18:13 |
|
Массивы и функции
|
|||
---|---|---|---|
#18+
Gomn, void Down(int *a, int m, int n, int &nmin, int buf) нашел первую ошибку: надо было int **a ... |
|||
:
Нравится:
Не нравится:
|
|||
26.10.2018, 20:26 |
|
Массивы и функции
|
|||
---|---|---|---|
#18+
GomnGomn, void Down(int *a, int m, int n, int &nmin, int buf) нашел первую ошибку: надо было int **a во втором voide тоже, прога запустилась, но возникла проблемка: сразу как вожу 1 или 2 прога прерывается ... |
|||
:
Нравится:
Не нравится:
|
|||
26.10.2018, 20:28 |
|
Массивы и функции
|
|||
---|---|---|---|
#18+
Gomnможете подкорректировать код(если не правильно) В первом приближении: 1. Вы не освобождаете память выделенную по указателям массива a 2. Код: plaintext 1. 2.
а если q == 3? 3. Код: plaintext 1.
Для чего buf в качестве параметра? и т.д., ваш рефакторинг ни о чем ... |
|||
:
Нравится:
Не нравится:
|
|||
27.10.2018, 23:01 |
|
Массивы и функции
|
|||
---|---|---|---|
#18+
есть же уже готовые ф-и для сдвигов, которые из 1 2 3 4 5 сделают 34512 rotate() , например https://ru.stackoverflow.com/questions/32205/Циклический-сдвиг-массива ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2018, 11:07 |
|
|
start [/forum/topic.php?fid=57&fpage=16&tid=2017736]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
29ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
64ms |
get tp. blocked users: |
2ms |
others: | 251ms |
total: | 397ms |
0 / 0 |