Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Работа с матрицами, "Умная" матрица 
V
    Опции темы
lenin_yo
Дата 24.11.2007, 11:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 37
Регистрация: 20.5.2007

Репутация: нет
Всего: нет



Помогите.
Есть максимальный элемент и
путем перестановок строк и столбцов (целиком) этот элемент
 надо переместить в правый верхний угол матрицы.
PM MAIL   Вверх
JackYF
Дата 24.11.2007, 12:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: 18
Всего: 162



lenin_yo, c твоей стороны код будет? Если нет, тогда в Центр Помощи.


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
lenin_yo
Дата 24.11.2007, 13:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 37
Регистрация: 20.5.2007

Репутация: нет
Всего: нет



Есть функция:

Код

int pArr (int NewSize,int** Array)
{    if (NewSize>=2)
     {    int** Start;
    Start=Array+1;
    int Max=Start[0][0];
    for(int i=0;i<NewSize-1;i++)
    {   for(int j=0;j<NewSize-1;j++)
         {    if(Start[i][j]>Max)
              Max=Start[i][j];
            }
    }
      cout<<"\t"<<Max;
      pArr(NewSize-1,Start);
      }
      return 0;
}


и есть процедура замены последней строки и последнего столбца:
Код
 
int Tmp
for(int i=NewSize-1;i>=0;i--)
{   Tmp=Start[NewSize][i];
     Start[NewSize][i]=Start[i][NewSize];
     Start[i][NewSize]=Tmp;
}

Необходимо модефицировать функцию вставив в нее подобную процедуру.
Надо, наверное п-ра для замены произвольного столбца и строки.(как сделать?)
Но поставить элемент в правыйй верхний угол всеравно не пойму как

Добавлено через 1 минуту и 51 секунду
Если макс элемент в центре матрици 3х3 ??
PM MAIL   Вверх
bsa
Дата 24.11.2007, 13:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 63
Всего: 196



Все просто. делается максимум в три приема (если можно менять местами любой столбец с любым и любую строку с любой). сначала находится строка и столбец с наибольшим элементом, меняются местами (например) столбец с максимальным элементом и крайний правый, затем строка с максимальным элементом и верхняя. Все:
Код
0 1 0    0 0 1    0 0 4
0 4 0 -> 0 0 4 -> 0 0 1
0 2 0    0 0 2    0 0 2

PM   Вверх
lenin_yo
Дата 24.11.2007, 16:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 37
Регистрация: 20.5.2007

Репутация: нет
Всего: нет



Спасибо.
Я тоже так подумал.Просто о замене столбцов и сторк местами сразу не сообразил.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0846 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.