![]() |
|
Модераторы: Poseidon |
![]()
|
|
| freshAngel |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 248 Регистрация: 1.10.2008 Репутация: нет Всего: нет |
Привет.
Есть матрица 3x3 нужно сравнить элементы, в каждом столбце (тоесть вертикально сравнить элементы) Сделал алгоритм. Но может можно проще!? Im need idea Пример: 3 -1 2 -1 3 4 5 4 4
|
|||
|
||||
| Soah |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 512 Регистрация: 18.2.2009 Репутация: 9 Всего: 54 |
||||
|
||||
| freshAngel |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 248 Регистрация: 1.10.2008 Репутация: нет Всего: нет |
Все просто. Есть матрица: 3x3 Например: 1 2 3 2 5 3 1 1 2 Элементы сравниваются в колонках, а не в строках. А именно. В первой колонке сравниваются элементы: 1 2 1 Во второй колонке: 2 5 1 В третьей колонке: 3 3 2 Ну и соответственно, сколько было совпадений, столько раз должно вылезти сообщение: Совпало! |
|||
|
||||
| Soah |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 512 Регистрация: 18.2.2009 Репутация: 9 Всего: 54 |
если совпадающие элементы соседи
если есть совпадающие элементы
Это сообщение отредактировал(а) Soah - 31.5.2009, 16:26 |
||||
|
|||||
| freshAngel |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 248 Регистрация: 1.10.2008 Репутация: нет Всего: нет |
Soah, спасибо.
Только вот незадача.
При таком варианте не учитывается сравнение из трех элементов. Так - как GameDataMatrix[j+1][i] затирается -1. А присвоение GameDataMatrix[j+1][i] = -1, необходимо по алгоритму... |
|||
|
||||
| Soah |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 512 Регистрация: 18.2.2009 Репутация: 9 Всего: 54 |
freshAngel, разве трудно изначально описать весь алгоритм или об этом я должен был сам догадаться До конца так и не понял что в итоге должно получится. |
|||
|
||||
| freshAngel |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 248 Регистрация: 1.10.2008 Репутация: нет Всего: нет |
Дико извиняюсь
Пример: Есть матрица: 4 1 3 4 5 8 4 2 9 В первом столбце матрицы есть три совпадающих значения. Их нужно заменить на -1 -1 1 3 -1 5 8 -1 2 9
В этом алгоритме, например, когда j=0 мы заменяем j+1 элемент на -1 Далее когда j=1 то получается, что сравниваем уже не 4 с 4, а -1 с 4. В итоге у меня получается, вот такая матрица: -1 1 3 -1 5 8 4 2 9 А в сравнении должны учитываться все элементы. И в итоге получиться: -1 1 3 -1 5 8 -1 2 9 |
|||
|
||||
| Soah |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 512 Регистрация: 18.2.2009 Репутация: 9 Всего: 54 |
freshAngel, если правильно понял, то нужно присвоить (-1) всем парам в столбце
или только для соседних элементов? |
|||
|
||||
| freshAngel |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 248 Регистрация: 1.10.2008 Репутация: нет Всего: нет |
В случае с матрицей 3x3 нужно.
Что - бы нулевой элемент сравнивался с первым, а первый со вторым. Совпавшие элементы заменялись на -1. Получается, что соседние. |
|||
|
||||
| Soah |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 512 Регистрация: 18.2.2009 Репутация: 9 Всего: 54 |
||||
|
||||
| freshAngel |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 248 Регистрация: 1.10.2008 Репутация: нет Всего: нет |
Уважаемый Soah, Ваш вариант даже лучше! Спасибо. Нужно будет подумать над вариантом с многомерной матрицей... |
|||
|
||||
![]()
|
| Правила форума "Центр помощи" | |
|
|
ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Более подробно с правилами данного раздела Вы можете ознакомится в этой теме. Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Центр помощи | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |