Форум программистов, компьютерный форум CyberForum.ru

Двумерные массивы. Четные строки матрицы сдвинуть на К элементов вправо. - C++

Восстановить пароль Регистрация
 
Alex_And
0 / 0 / 0
Регистрация: 30.03.2012
Сообщений: 4
31.03.2012, 20:21     Двумерные массивы. Четные строки матрицы сдвинуть на К элементов вправо. #1
Используя функции сформировать двумерный массив. Все четные строки матрицы сдвинуть циклически на К элементов вправо.

Первую часть задания я смог сделать, а вот вторая не получается.



C++
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
#include <conio.h>
#include <stdlib.h>
#include <math.h>
#include <iostream.h>
#include <iomanip.h>
 
void mass(int n, int m)
{
 int a[100][100];
 int i;
 cout <<"Исходный массив:"<<"\n";
 srand(time(NULL));
  for  (i=0; i<n; i++)
  {
       for (int j=0; j<m; j++)
       {
       a[i][j]=rand()%50;
       cout << a[i][j] << "\t";
       }
        cout <<"\n";
  }
}
 
 
int main()
{
int n,m;
cout << "Введите число строк: ";
cin >> n;
cout << "Введите число столбцов: ";
cin >> m;
mass(n,m);
getch();
return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.03.2012, 20:21     Двумерные массивы. Четные строки матрицы сдвинуть на К элементов вправо.
Посмотрите здесь:

Сдвинуть массив циклически на К элементов вправо C++
C++ Очередное "Сдвинуть циклически на M элементов вправо"
В каждой строке матрицы Z(5,6) сдвинуть все элементы вправо на один разряд C++
C++ Сдвинуть элементы массива на k элементов вправо
C++ Двумерные массивы. Подсчитать число элементов матрицы
Двумерный динамический массив. Все нечетные строки матрицы сдвинуть циклически на К элементов влево C++
C++ Найти в каждом столбце количество отрицательных элементов. Поменять местами четные строки исходной матрицы
C++ Элементы одномерного массива из n элементов циклически сдвинуть на к мест вправо

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
soon
 Аватар для soon
2536 / 1301 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
31.03.2012, 20:49     Двумерные массивы. Четные строки матрицы сдвинуть на К элементов вправо. #2
C++
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
#include <iostream>
#include <vector>
#include <algorithm>
#include <random>
#include <cstdlib>
#include <iomanip>
 
using T_row = std::vector<int>;
using T_matrix = std::vector<T_row>;
 
int main()
{
    std::random_device rd;
    std::mt19937 gen(rd());
    std::uniform_int_distribution<> uid(-10, 10);
    const std::size_t rows = 10;
    const std::size_t cols = 10;
 
    T_matrix matrix(rows);
    std::generate
    (
        matrix.begin(),
        matrix.end(),
        [&gen, &uid, cols] ()
        {
            T_row row(cols);
            std::generate
            (
                row.begin(),
                row.end(),
                [&gen, &uid] ()
                {
                    return uid(gen);
                }
            );
            return row;
        }
    );
 
    for(const auto& row: matrix)
    {
        for(const auto& elem: row)
            std::cout << std::setw(4) << elem;
        std::cout << std::endl;
    }
    std::cout << std::endl;
 
    const std::size_t k = 3;
 
    for(auto it = matrix.begin() + 1; it < matrix.end(); it += 2)
        std::rotate(it -> begin(), it -> end() - k, it -> end());
 
    for(const auto& row: matrix)
    {
        for(const auto& elem: row)
            std::cout << std::setw(4) << elem;
        std::cout << std::endl;
    }
 
    return 0;
}
Yandex
Объявления
31.03.2012, 20:49     Двумерные массивы. Четные строки матрицы сдвинуть на К элементов вправо.
Ответ Создать тему
Опции темы

Текущее время: 21:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru