|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
28.11.2021, 20:57 | #1 |
Регистрация: 27.11.2021
Сообщений: 8
|
сдвиг двумерного массива вверх/вниз
Создать двумерный массив. Заполните его случайными числами и выведите на экран. Пользователь выбирает с помощью меню количество оползней и их направление (слева, справа, вверх, вниз). Выполнить смещение в массиве и вывести на экран полученный результат. Сдвиг циклический.
Например, если есть такой массив (2 строки, 6 столбиков) 1 2 0 4 5 3 4 5 3 9 0 1 и пользователь выбрал сдвиг на 2 разряда вправо, то мы получим такой массив: 5 3 1 2 0 4 0 1 4 5 3 9 вот код к задаче. Проблема состоит в том, что сдвиг работает только на единицу. Когда ввожу 2(например) то предпоследний столбец или строку сдвигает, а последний остаётся где был. А вторая проблема, что каждый следующий кейс сдвигает данные с предыдущего (тоесть напр. изначальный массив 1234, кейс один влево 2341, второй кейс вправо возврашает 1234. Подскажите как довести код до ума? Код:
Последний раз редактировалось Airy; 28.11.2021 в 21:40. |
28.11.2021, 22:34 | #2 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,318
|
Если есть рабочий код сдвига на единицу, то просто засуньте его в цикл и повторите offset раз.
Перепроверьте по всему коду размеры индексов (перепутаны n и m местами кое-где). Ну вы меняете один и тот же массив array. А разве задание требует применять сдвиги к исходному массиву? По-моему, логичнее двигать именно предыдущий результат (например, хочу подвинуть массив на 2 вправо и на 3 вверх).
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
|
28.11.2021, 23:20 | #3 | |
Регистрация: 27.11.2021
Сообщений: 8
|
BDA,
Цитата:
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Сдвиг строк/столбцов двумерного массива (судоку) | Ilyard | C# (си шарп) | 3 | 17.01.2014 16:53 |
сдвиг двумерного массива | Вечный_студент | Общие вопросы C/C++ | 0 | 14.05.2012 16:24 |
Прокрутка формы вверх и вниз | xRamzeSx | Общие вопросы Delphi | 1 | 15.05.2011 11:57 |
Нажатие клавиш на клавиатуре вверх, вниз | Droid | Общие вопросы Delphi | 16 | 12.07.2009 18:13 |
Перемещать строки вверх-вниз, с помощью стрелок. | Rio309 | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 6 | 27.10.2008 21:47 |