1 | ||||||
Функция CompareIntDesc()23.08.2013, 00:54. Показов 1433. Ответов 16
Метки нет (Все метки)
Здравствуйте!
Ребята подскажите, пожалуйста, нашёл функцию сортировки цифр в StringList, но почему-то правильная сортировка проходит только после того как я несколько раз нажму кнопку. Почему не сортирует правильно с первого раза. Заранее благодарен за ответ.
0
|
23.08.2013, 00:54 | |
Ответы с готовыми решениями:
16
Функция удаления текста в скобках [2], непосредственно функция + 12кб вложений Функция sqrt: существует более одного экземпляра. Функция перегруженная Перегрузка операций: friend-функция или функция-член класса Выясните, сохраняет ли булева функция 0, 1, является ли функция линейной, монотонной, само двойственной? |
Супер-модератор
|
||||||
23.08.2013, 01:10 | 2 | |||||
1
|
Супер-модератор
|
||||||
23.08.2013, 11:35 | 4 | |||||
Всё можно сортировать. Даты - вот так: Сортировка дат
Или вообще вот так:
1
|
23.08.2013, 12:13 [ТС] | 5 | |||||
Я сделал вот так
0
|
Супер-модератор
|
|
23.08.2013, 12:35 | 6 |
Ну, и зачем? Во-первых, зачем c_str()? Чтобы сделать 2 никому не нужных преобразования? Процессор слишком мощный? StrToDate получает в качестве параметра строку, а не const char *, вообще-то... Во-вторых, если есть готовая функция для сравнения (да еще и - чудо!!! - возвращающая результат нужного типа) - я предпочитаю использовать именно ее, а не самописные аналоги...
0
|
23.08.2013, 15:47 | 7 |
Насколько я помню ф-ция компаратор должна возвращать одно из значений : 1, 0, -1 ( >, =, < ) а не тип bool или разницу
Добавлено через 1 минуту
0
|
Супер-модератор
|
|
23.08.2013, 16:27 | 10 |
Значений, возвращаемых этой функцией, может быть не 2 и не три, а 232, весь диапазон int... Если я верну из функции (-2013), что будет, по-твоему? Ошибка (судя по посту №7 - да, ведь (-2013) не является ни (-1), ни нулем, ни единицей)?
0
|
23.08.2013, 17:17 | 11 | |||||
Вопрос не в значениях, а в состоянии, их три : больше, меньше, равно.
Именно поэтому ф-ция возвращает int, а не bool. Добавлено через 39 минут Возвращать можно любое отрицательное число, не важно это -2013 или -1, но очевиднее использовать именно -1 в коде, а не магическое -2013 Добавлено через 3 минуты В общем виде выглядеть должно приблизительно так
1
|
23.08.2013, 23:25 | 12 | |||||
Avazart, такая скрупулезность совершенно ни к чему, и вот почему. Использовать компаратор большая часть людей будет как-то так:
0
|
24.08.2013, 00:25 | 16 |
ОК. Как это реализовать, если компаратор возвращает одно из трех известных значений, и почему это нельзя или сложнее реализовать, если компаратор возвращает произвольные значения, отличающиеся знаком?
0
|
24.08.2013, 00:43 | 17 | |||||
Ну согласен возможно мое предположение ошибочно, не каждый день смотрю внутрь быстрой сортировки (тем более на Deplhi)
Classes.pas
0
|
24.08.2013, 00:43 | |
24.08.2013, 00:43 | |
Помогаю со студенческими работами здесь
17
Какую библиотеку надо подключать чтоб работала функция _getch() и функция cin.get()? Функция - Pos(s,s1). Назначение - поиск первого вхождения подстроки s1 в строку s (аналогичная функция C - strstr) Функция DisplayTranslucentSprite функция стала игнорировать параметр прозрачности Чистая виртуальная функция функция не имеет оператора переопределения Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |