IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> переставление строк и столбцов местами, нужно привести квадратную матрицу в "красивое" состояние
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 23
Пол: Мужской
Реальное имя: Руслан

Репутация: -  0  +


допустим нам дана какая-то из 0 и 1 матрица...в ней перепутаны столбцы и строки...нужно привести к такому виду:

1 1 1 0 0 0 0 0
1 1 1 0 0 0 0 0
1 1 1 0 0 0 0 0
0 0 0 1 0 0 0 0
0 0 0 0 1 0 0 0
0 0 0 0 0 1 1 0
0 0 0 0 0 1 1 0
0 0 0 0 0 0 0 1

это пример...матрица может быть и не такого вида...
конкретно - мне нужна помощьв написании отрывка программы, который бы находил одинаковые строки и столбцы и сдвигал их вместе к указанному выше виду. желательно через массивы.пожалуйста помогите - хотя бы принцип, по которому можно это сделать. у меня есть задумка, но реализовать её не могу...слишком сложно по моему. я предполагаю что можно сравнивать поэлементно 1 и 2 строку затем 1 и 3 и так до последней.если строки одинаковые, то ставить такую же строку после первой затем после второй...затем провести аналогичный операции со столбцами. пожалуйста помогите реализовать мою идею,или пришлите свою.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






Цитата
нужно привести к такому виду:

Цитата
матрица может быть и не такого вида...
Это называется "принеси то, не знаю что..." Конкретики не хватает: какая матрица тебе задана? Допустим, любая. К какому виду ее нужно привести? Что такого примечательного есть в той матрице, которую ты нарисовал? Ты имеешь в виду, что главная диагональ должна состоять только из единиц? Или что?
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Новичок
*

Группа: Пользователи
Сообщений: 23
Пол: Мужской
Реальное имя: Руслан

Репутация: -  0  +


Цитата(volvo @ 11.03.2008 21:47) *

Это называется "принеси то, не знаю что..." Конкретики не хватает: какая матрица тебе задана? Допустим, любая. К какому виду ее нужно привести? Что такого примечательного есть в той матрице, которую ты нарисовал? Ты имеешь в виду, что главная диагональ должна состоять только из единиц? Или что?

1 1 0 0 1 1 0 0 0 0 0 0 0
1 1 0 0 1 1 0 0 0 0 0 0 0
0 0 1 0 0 0 0 0 0 0 0 0 0
0 0 0 1 0 0 1 0 1 0 0 0 0
1 1 0 0 1 1 0 0 0 0 0 0 0
1 1 0 0 1 1 0 0 0 0 0 0 0
0 0 0 1 0 0 1 0 1 0 0 0 0
0 0 0 0 0 0 0 1 0 0 0 0 0
0 0 0 1 0 0 1 0 1 0 0 0 0
0 0 0 0 0 0 0 0 0 1 0 0 0
0 0 0 0 0 0 0 0 0 0 1 1 1
0 0 0 0 0 0 0 0 0 0 1 1 1
0 0 0 0 0 0 0 0 0 0 1 1 1
вот из такой матрицы нужно составить так называемую матрицу сильных компонент - а именно (на матрице видно) элементы 1,1 1,2 2,1 2,2 соеденить с 1,4 1,5 2,4 2,5 и аналогичную операцию произвести со столбцами...чтобы матрица стала вот такой "красивой"
1 1 1 1 0 0 0 0 0 0 0 0 0
1 1 1 1 0 0 0 0 0 0 0 0 0
1 1 1 1 0 0 0 0 0 0 0 0 0
1 1 1 1 0 0 0 0 0 0 0 0 0
0 0 0 0 1 1 0 0 0 0 0 0 0
0 0 0 0 1 1 0 0 0 0 0 0 0
...и так далее...да,кстати говоря диагональ действительно всегда будет единичной но также будут и "квадартные сгустки" - блоки единичных матриц.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






Цитата
чтобы матрица стала вот такой "красивой"
Ты это компьютеру как объяснять будешь? Определение "красоты" матрицы приведи...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Новичок
*

Группа: Пользователи
Сообщений: 23
Пол: Мужской
Реальное имя: Руслан

Репутация: -  0  +


в общем сортироваь матрицу так чтобы все единицы оказались на диагонали. путём переставления столбцов и строк.и привести в конечном счёте к диагональному виду, так чтобы на диагонали были единицы и блочные матрицы из единиц.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 18.04.2024 21:16
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name