1 / 1 / 1
Регистрация: 12.11.2015
Сообщений: 11
1

В двухмерном массиве сдвинуть ячейки влево вправо / вверх вниз

13.01.2016, 11:22. Показов 3956. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день. Вот текст задачи:
Создайте двухмерный массив. Заполните его случайными числами и покажите на экран. Пользователь выбирает количество сдвигов и положение (влево, вправо, вверх, вниз). Выполнить сдвиг массива и показать на экран полученный результат. Сдвиг циклический.
Например, если мы имеем следующий массив
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
Вот код, до куда смог)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
    int a, b;
    const int row = 3, col =6;
    int mas1[row][col];
    cout << "Создается массив\n";
    for (int i = 0; i < row; i++){
        for (int j = 0; j < col; j++){
            mas1[i][j] = rand()%21;
            cout << setw(3) << mas1[i][j] << "  ";
            }
        cout << endl << endl;
        }
    cout << "Выберите сдвиг влево/право\n";
    cin >> a;
    cout << "Выберите сдвиг вверх/вниз\n";
    cin >> b;
    for (int i = 0; i < row; i++){
        for (int j = 0; j < col; j++){
            swap(mas1[i][j],mas1[i+a][j+b]);//что тут как тут)
            cout << setw(3) << mas1[i][j] << "  ";
        }
        cout << endl << endl;
    }
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.01.2016, 11:22
Ответы с готовыми решениями:

Реакция на нажатие клавиш (вверх, вниз, влево, вправо)
Как сделать, что бы программа откликалась на кнопки вверх, вниз, влево, вправо. // Движок для игры...

(CИ)Заполнить матрицу ЛП, от центра по спирали: влево - вниз - вправо - вверх.
(СИ)Заполнить матрицу ЛП, от центра по спирали: влево - вниз - вправо - вверх.

Заполнить матрицу ЛП от левого верхнего угла по спирали : вправо-вниз-влево-вверх
#include &lt;stdio.h&gt; #define S 9 int Ar; int main (void){ short l, r; short r1,r2; ...

Заполнить матрицу ЛП, от левого верхнего угла по спирали: вправо - вниз - влево - вверх.
Заполнить матрицу ЛП, от левого верхнего угла по спирали: вправо - вниз - влево - вверх.

2
26 / 26 / 26
Регистрация: 01.10.2015
Сообщений: 175
13.01.2016, 11:26 2
Извини, а как массив сдвигается по примеру не понятно.
0
1 / 1 / 1
Регистрация: 12.11.2015
Сообщений: 11
13.01.2016, 11:28  [ТС] 3
Ну выбрал на два сдвиг, две крайние переместились в конец
0
13.01.2016, 11:28
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.01.2016, 11:28
Помогаю со студенческими работами здесь

Сдвинуть в двухмерном массиве все ряды циклически вправо...
Ребят,написал программу но не так как нужно работает.Помогите исправить недоработки. Задание:...

Нарисовать прямоугольник и при нажатии клавиш необходимо переместить влево, вправо, вверх или вниз
Найдите,пожалуйста, ошибки в данном коде: ...

Сдвинуть элементы в dataGridView Вверх/Вниз/Вправо/Влево
Нужно сдвинуть элементы матрицы(4х4) в dataGridView Вверх/Вниз/Вправо/Влево избавившись от пустых...

Движение вверх, вниз, вправо и влево, но не по диагонали
как реализовать движение фигуры только в таком направление, т.е. вверх, вниз, вправо и влево, но не...

wpf ScrollViewer + StackPanel не перемещается влево, вправо, вверх, вниз
в wpf ставлю ScrollViewer в него StackPanel StackPanel постояно центрируется хочу переместить...

YASM какой код у клавиш влево, вправо, вверх, вниз?
YASM какой код у клавиш влево, вправо, вверх, вниз?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru