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

матрица,цикличный здвиг - C++

Восстановить пароль Регистрация
 
-SAFT-
0 / 0 / 0
Регистрация: 23.11.2010
Сообщений: 8
23.11.2010, 15:28     матрица,цикличный здвиг #1
Дана матрица m,n. По жыланию пользавателя осушествить циклычний здвиг елементов строки або столбца на указаное число позиций!!!!
Вот што есть из нароботки_____
// Лаба№4.cpp: определяет точку входа для консольного приложения.
//
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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
#include "stdafx.h"
#include <conio.h>
#include <iostream>
#include <math.h>
 
using namespace std;
void main()
{
    int x[50][50];
    int n,m;
    setlocale(LC_ALL,"Russian");
    int mass[50],k,a,s,b,c,i,j;
    cout<<"Введите размер n,m"<<endl;
    cin>>n>>m;
    for(int i=0;i<n;i++)
    for(int j=0;j<m;j++)
    {
    cout<<"Введите матрицу А["<<i<<"]["<<j<<"]"<<endl;
    cin>>x[i][j];
    }
    for(int i=0;i<n;i++)
        {
            cout<<endl<<endl;
            for(int j=0;j<m;j++)
            cout<<x[i][j]<<" ";
        }
         cout<<endl;
         cout<<"Введите 1 для строчки,2 для столбика"<<endl;
         cin>>a;
    if(a=1)
        {cout<<"Введите номер строчки"<<endl;
             cin>>b;
                  i=b-1;
                  k=0;
                  cout<<"Введите смeшение"<<endl;
                   cin>>s;}
             else
                 {cout<<"Введите номер столбика";
                  cin>>c;
                 }
                 j=c-1;
                 for(j=0;j<m;j++)
                     {
                         mass[j]=x[i][j];
                     }
                 for(j=s;j<n;j++)
                     {
                         x[i][j]=mass[k];
                 }
                 if(a=1)
                 {i=b-1;
                     for(j=0;j<m;j++)
                    {
                     mass[j]=x[i][j];
                     }
                    for(j=s;j<s;j++)
                   {    
                    x[i][j]=mass[k];
                   }
                 }
                 else
                 i=c-1;
                 for(j=s;j<n;j++)
                 {x[i][j]=mass[k];
                 k++;}
                 for(i=0;i<s;i++)
                 {
                     x[i][j]=mass[k];
                     k++;
                 }
                 for(i=0;i<n;i++)
                 {for(j=0;j<m;j++)
                 cout<<x[i][j]<<" "<<endl;
                 }
 
 getch();
        
}
Добавлено через 1 минуту
помогите пожалуста
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.11.2010, 15:28     матрица,цикличный здвиг
Посмотрите здесь:

С++ матрица C++
C++ Матрица
C++ Цикличный процесс НУЖНА ВАША ПОДМОГА!!!
C++ SOS!!! матрица,цыкличный здвиг!!!!очень нада!!!Зарания СПС!!!
C++ Матрица
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
23.11.2010, 15:32     матрица,цикличный здвиг #2
-SAFT-, Вы случайно не на первом курсе ДИИТа учитесь?
Ang_07
 Аватар для Ang_07
0 / 0 / 0
Регистрация: 09.11.2010
Сообщений: 47
23.11.2010, 15:38     матрица,цикличный здвиг #3
это мой сосед по комнате
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
23.11.2010, 15:41     матрица,цикличный здвиг #4
Ang_07, У Вас есть нечто общее.
Ang_07
 Аватар для Ang_07
0 / 0 / 0
Регистрация: 09.11.2010
Сообщений: 47
23.11.2010, 15:46     матрица,цикличный здвиг #5
ну ... то сообщение я писал xD ну и город указан)))
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
23.11.2010, 15:59     матрица,цикличный здвиг #6
Куча ошибок, но не это самое главное. Сам алгоритм неправильный. Если выбирается смещение по столбцу, то считывается номер столбца в переменную с, смещения не считывается.
Вообще нужно смещения по столбцу и строке отдельно написать
одно здесь:
C++
1
2
3
4
      if(a==1)
{
//
}
второе здесь:
C++
1
2
3
4
else// только лучше написать if(a==2)
{
//
}
Yandex
Объявления
23.11.2010, 15:59     матрица,цикличный здвиг
Ответ Создать тему
Опции темы

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