Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Object Pascal: кроссплатформенные технологии > Незаконченная сортировка |
Автор: Kanes 4.12.2006, 22:15 | ||||
Здравствуйте, у меня возникает проблема при сортировке двумерного массива (матрицы). Сортирую строки по такому принципу: для каждой строки есть свой характеристика - сумма четных положительных элементов, вот и надо мне отсортировать строки по возрастанию этой характеристки, но сортировка происходит не до конца (PS компилятор никакой ошибки не выдает) Вот кусок кода с сортировкой:
GetDescription - ф-ция получения хар-ки строки, ее код:
Уважаемые форумчане плиз помогите ![]() |
Автор: volvo877 4.12.2006, 22:37 | ||
Это у тебя, надо понимать, "пузырек"? Что-то не то в нем... Вот так не лучше сделать?
|
Автор: Kanes 4.12.2006, 23:37 | ||
volvo877, проблема остается, я пробовал разные исполнения "пузырька", дело мне кажется в этой строке:
Я для проверки вместо этой строки, как условие пробовал сортировать, например, относительно первого элемента строки, и все работает нормально ![]() |
Автор: Kanes 5.12.2006, 17:37 |
Народ, может быть у кого-нить есть другие идеи как решить эту задачу? |
Автор: Zero 5.12.2006, 18:45 |
Дело, то может и в этой строке, т.к. судя повсему, в ней нету учёта, конца, т.е. учёта того когда в конце j+1 элемент будет браться из не существующего элемента матрицы. Но тебе не легче было бы дать полный код программы как ты решал, чтобы нам не набирать и не выдумывать, то как он у тебя находиться. И более чётко написать само задание. |
Автор: Kanes 5.12.2006, 21:32 | ||||
Задание было дано именно так, а полная программа от приведенного кода отличается только наличием вывода матрицы, и еще заполнения массива случайным образом. Проблема решена, спасибо всем, кто пытался помочь. Собственно 2 ошибки: 1) Используя код volvo877, обнаружил ошибку
2) А самая главная ошибка в функции GetDescription(), в задании ф-ция ищет сумму четных положительных элементов, а на практике получается нечетных, все из-за того, что индекс массива у меня начинается с нуля, следовательно, надо в ф-ции считать сумму нечетных элементов, т.е.
|