![]() |
Модераторы: bsa |
![]() ![]() ![]() |
|
_OdinO4ka_ |
|
|||
Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 8.11.2006 Где: Самара Репутация: нет Всего: нет |
Помогите написать часть модуля. Суть такая у нас имеется матрица n*n (для наглядности пусть n = 4) Затем, мы из начальной матрицы (START) меняем элементы в условно шахматном порядка, т.е.
Была матрица вот такая a1 a2 a3 a4 b1 b2 b3 b4 c1 c2 c3 c4 d1 d2 d3 d4 далее выбираем маленький кусок матрицы a1 a2 и меняем местами так что бы получилось 4 вариации b2 a2 a1 b1 b1 b2 a2 a1 b1 b2 b1 a1 a2 b2 a1 a2 b2 b1 ну и соответственно мы получаем 4 новых матрицы с этими кусками затем мы выбираем одну из них по критерию, т.е. из этих 4 остается только одна и переходим на следующий кусок и т.д. модуль для критерия написан. Я что - то запутался с этими матрицами, я так понимаю, что нужно создать 4 временных переменных матрицы и в них записывать измененные матрицы. Заранее большое спасбо! |
|||
|
||||
Курсант |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 338 Регистрация: 21.2.2009 Где: Балашиха или Воро неж Репутация: 1 Всего: 4 |
Очень трудно понять из Ваших слов что именно требуется, какой алгоритм "условно шахматного порядка"... К тому же Вы сами даете понять что не знаете что должно быть в результате... Прийдется поднапрячься Вам и изложить вопрос понятнее...
Мое подозрение - Вам нужно резервировать область памяти под матрицы, потом ненужные удалять (как вариант)... Еще как вариант - можно создать объект матрицы и реализовать в его методах все операции, которые Вам там с матрицами проводить надо, потом можете создавать их динамически, не создавать, удалять, вызывать методы и в общем то сильно облегчить текст основной программы... |
|||
|
||||
_OdinO4ka_ |
|
|||
Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 8.11.2006 Где: Самара Репутация: нет Всего: нет |
условно шахматный порядок это я сам придумал, можно забить на этот термин. Результат у нас как бы делиться на 2 части: создается 4 новых матрицы с такими измененными кусками, затем из этих 4 остается только одна, остальные убиваются. Которая "выжила" с ней прогоняются такие процедуры заново и так пока не достигнет нужного критерия (у меня в задаче это минимизация ошибки функции), вот примерно так.
|
|||
|
||||
Курсант |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 338 Регистрация: 21.2.2009 Где: Балашиха или Воро неж Репутация: 1 Всего: 4 |
Похоже все, Вам остается только реализовать примитивы вроде ввода-вывода и копирования, а также Ваши специфические критерии ошибки и пригодности... А общая идея такова. Это сообщение отредактировал(а) Курсант - 4.6.2009, 16:39 |
|||
|
||||
_OdinO4ka_ |
|
|||
Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 8.11.2006 Где: Самара Репутация: нет Всего: нет |
Покопавшись в книжках и доработав пример из этой книги, написал прогу, но она на яве, помогите её перекинуть на С, я с ним почти не работал :(
Заранее огромное спасибо! |
|||
|
||||
_OdinO4ka_ |
|
|||
Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 8.11.2006 Где: Самара Репутация: нет Всего: нет |
может кто - нибудь, все же поможет, а то я что - то совсем встрял :(
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "C/C++: Для новичков" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |