|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
18.12.2015, 09:33 | #1 |
Пользователь
Регистрация: 29.06.2011
Сообщений: 56
|
Сортировка столбцов двумерного массива
Характеристикой столбца целочисленной матрицы назовем сумму модулей его отрицательных нечетных элементов.
Переставляя столбцы заданной матрицы, расположить их в соответствии с ростом характеристик. Найти сумму элементов в тех столбцах, которые содержат хотя бы один отрицательный элемент. В своей программе я сделал так, что отыскал характеристику для каждого столбца, сунул их в одномерный массив и отсортировал от меньшего к большему. Каким образом я могу использовать в программе полученный массив из характеристик? Если продолжение моей программы невозможно, прошу указать как надо было сделать правильно. С поиском суммы столбцов с отрицательными справлюсь самостоятельно. По мере исполнения программы я захотел посмотреть как работает сортировка характеристик, поэтому вывел свой массив и массив параметров. Результат - пустой экран. http://prntscr.com/9fkdqq Что в моей программе это вызывает? Код:
Последний раз редактировалось jirtreck; 18.12.2015 в 09:44. |
18.12.2015, 10:19 | #2 | ||
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Цитата:
I'm learning to live...
|
||
18.12.2015, 10:29 | #3 |
Пользователь
Регистрация: 29.06.2011
Сообщений: 56
|
Если под индексацией вы имеете в виду престановку столбов массива M, то я не знаю как это оформить из моей текущей программы, поэтому обратился сюда.
Массив I я отсортировал от меньшего к большему, не понимаю что вы имеете в виду под перестановкой I Не дошло тогда про массив, захотел переменными, спасибо за корректировку! Я еще неопытен, потому прошу простить, если не вижу очевидного Последний раз редактировалось Stilet; 18.12.2015 в 12:24. |
18.12.2015, 12:31 | #4 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
У тебя это массив I. Короче. Тебе нужно завести два массива: Массив номеров (I) массив характеристик (С) Массив характеристик ты заполнишь суммой модулей отрицательных нечетных элементов. Массив I соответственно заполнишь номерами колонок Тогда получится такая перестановка: Код:
Код:
Понял идею?
I'm learning to live...
|
|
18.12.2015, 15:36 | #5 |
Пользователь
Регистрация: 29.06.2011
Сообщений: 56
|
Дошло, но мне после 7 часов сидения над программами для универа показалось, что первый цикл, который задает I, вбирает в себя другие циклы. Битый час пытался встегнуться в такую логику.
Нашел свою ошибку и поправил: Код:
Благодарю за подачу методики решения! Теперь у меня вечный цикл с постоянно вызывающейся -58 Что не так? Код:
Но почему оно его принимает? Одну из ошибок нашел: C выходил за значения N, когда я его заполнял. Код:
Последний раз редактировалось Stilet; 18.12.2015 в 18:21. |
18.12.2015, 17:35 | #6 |
Пользователь
Регистрация: 29.06.2011
Сообщений: 56
|
Не знал о настолько жуткой разнице между ++ и +1 в конце итерации цикла...
Заменил все на ++ и поехало Теперь у меня все цифры неслучайные. Каждый раз одни и те же на выводе, да и сортировка сработала только отчасти Код:
Последний раз редактировалось Stilet; 18.12.2015 в 18:21. |
18.12.2015, 17:55 | #7 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
генератор псевдослучайных чисел нужно перед использованием иницилизировать.
гуглите srand() |
18.12.2015, 18:22 | #8 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
I'm learning to live...
|
|
18.12.2015, 18:28 | #9 |
Пользователь
Регистрация: 29.06.2011
Сообщений: 56
|
Теперь сортировка не работает по-хорошему:
Код:
Считаю модули выведенных чисел, - значения вразброс. |
18.12.2015, 18:52 | #10 |
Пользователь
Регистрация: 29.06.2011
Сообщений: 56
|
Вывожу до сортировки по номерам
Код:
Код:
http://prntscr.com/9fpkxj Последний раз редактировалось jirtreck; 18.12.2015 в 19:12. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Сдвиг строк/столбцов двумерного массива (судоку) | Ilyard | C# (си шарп) | 3 | 17.01.2014 16:53 |
Удаление строк и столбцов двумерного массива | Павел Шилин | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 20.05.2012 21:07 |
Сортировка двумерного массива | shadowfiend | C++ Builder | 0 | 21.04.2011 19:29 |
Сортировка двумерного массива | AlexXXX12389 | Помощь студентам | 0 | 17.10.2010 10:32 |
Сортироука столбцов двумерного массива | Гамбит | Помощь студентам | 10 | 05.05.2010 19:27 |