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

подправить двумерные массивы - C++

Восстановить пароль Регистрация
 
feron
0 / 0 / 0
Регистрация: 26.11.2009
Сообщений: 16
22.05.2011, 14:25     подправить двумерные массивы #1
Осуществить циклический сдвиг элементов прямоугольной матрицы на N элементов вправо или вниз (в зависимости от введенного режима). N может быть больше количества элементов в строке или столбце.

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

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
#include <iostream.h>
#include <iomanip.h>
#include <math.h>
void sdvig(int nrow, int ncol);
 
int main()
{
    int nrow,ncol;
    cout<<"Vvedite kolvo ctrok i ctolbcov"<<endl;
    cin>>nrow;
    cin>>ncol; 
    sdvig(nrow,ncol);
    return 0;
}
 
void sdvig(int nrow, int ncol){
    int i,j,z,w,jnew,inew;
int **a=new int *[nrow]; 
for (i=0; i<nrow; i++) a[i]=new int[ncol];
cout<<"Vved elementi massiva"<<endl;
for (i=0; i<nrow; i++)
for (j=0; j<ncol; j++) cin>>a[i][j]; 
for (i=0; i<nrow; i++)
{
    for(j=0; j<ncol; j++) cout<<setw(2)<<a[i][j]<<"  ";
    cout<<endl;
}
 
cout<<"--------------------------------------------------------------------------------"<<endl;
cout<<"Vvedite sdvig po stolbcam"<<endl;
    cin>>z;
 
cout<<"Vvedite sdvig po strocam"<<endl;
    cin>>w;
 
    for(i=0;i<nrow;i++)
    {
    for(j=0;j<ncol;j++)
    
    {   inew=(i + (w % nrow))%nrow;
        jnew=(j + (z % ncol))%ncol;
        cout<<setw(2)<<a[inew][jnew]<<"  ";
         
    } 
    cout<<endl; 
    }
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.05.2011, 14:25     подправить двумерные массивы
Посмотрите здесь:

двумерные массивы C++
C++ Двумерные массивы
Двумерные массивы C++
C++ С/С++ двумерные массивы
Двумерные массивы C++
Двумерные массивы C++
C++ Двумерные массивы
C++ Двумерные массивы

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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