| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Для новичков > алфавитный порядок |
| Автор: TOREN 1.2.2008, 22:23 |
| дана структура с элементами TOVAR, MAGAZIN, STOIMOST. задача вывести всю информаци, размещенную в алфавитном порядке под названием товаров. как это можно реализовать? |
| Автор: archimed7592 1.2.2008, 23:06 |
Отсортировать по имени товара и вывести Проблема, надо понимать с первым(сортировкой)? В любом случае покажи какой-нибудь исходный код от которого можно будет "плясать". |
| Автор: TOREN 1.2.2008, 23:43 | ||||
вот исходный код
сортировку нужно сделать в этой части, т.е. при выводе информации
|
| Автор: new_web 2.2.2008, 00:02 | ||||
| Елси, это работа с базами данных, и приложение должно иметь оконный интерфейс, то в DataBaseDestop нужно создать вторичный индекс для требуемой таблицы Архангельский это советует делать так ...раздел в выпадающем списке свойств таблицы: Secondary Indexes — вторичные индексы. Этот раздел позволяет создать необходимые для дальнейшей работы вторичные индексы (первичный индекс создается по ключевым полям). //редактировано мной Имя индекса Поля TovarIndex TOVAR Чтобы создать новый вторичный индекс, нажмите кнопку Define — опреде- лить. Откроется диалоговое окно. В его левом окне Fields содержится список доступных полей, в правом окне Indexed fields вы можете подобрать и упорядочить список полей, включаемых в индекс. Для переноса поля из левого окна в правое надо выделить интересующее вас поле или группу полей и нажать кнопку со стрелкой вправо. Стрелками Change order (изменить последова- тельность) можно изменить порядок следования полей в индексе. ........ Выделите на форме компонент Tablel. В Инспекторе Объектов вы увидите среди прочих свойства IndexName и IndexFieldName. Первое из них содержит выпадающий список индексов, созданных для вашей таблицы. Выберите, например, индекс TovarIndex, и увидите, что записи окажутся упорядоченными по алфавиту, поскольку в этот индекс включено TOVAR Альтернативный вариант индексации предоставляет свойство IndexFieldName. В нем просто перечислены предусмотренные комбинации полей и вы можете выбрать не- обходимую, если забыли, что обозначают имена индексов. Добавлено через 14 минут и 41 секунду
Я уже видел на форумах вопрос о сортировке, даже сам когда-то сделал что-то подобное. но не помню где,... Недавно, вчера, пробовал написать цикл сравнения с элементами массива char[32] , елементы которого иинициализированы алфавитом, но. запутался, я со строкой мутил, она у меня никак пустой не хотела ставать, зависала, попустился... там простой цыкл, но...если бы увидел |
| Автор: archimed7592 2.2.2008, 00:50 |
| TOREN, ок, что знаешь про сортировку? Почитай здесь: http://algolist.manual.ru/sort/index.php Отлично, я теперь знаю что тебе надо. Теперь расскажи с какой проблемой ты столкнулся, когда пытался сделать то, что тебе надо. |
| Автор: archimed7592 2.2.2008, 13:33 | ||
Уважаемый, какой же это С#? Хорошо, сортировкой называется переставление местами элементов(массива или ещё чего-то) с той целью, чтобы в итоге все элементы были упорядочены(по некоторой ф-ции сравнения). Возьмём, к примеру сортировку пузырьком(без каких-либо оптимизаций):
Теперь два вопроса: 1. Понятно ли тебе как(или почему) будет работать этот алгоритм сортировки? 2. С какой именно частью алгоритма у тебя трудности в реализации? |
| Автор: TOREN 2.2.2008, 21:07 | ||
а что это?
я не понимаю как мне сравнивать буквы? как мне написать, что если первая буква в слове "Б", а в следующем слове первая буква "А", то поменять их местами? вы не могли бы реализовать на пратике код? |
| Автор: archimed7592 2.2.2008, 21:19 | ||
Приведённый кусок кода - Си. На крайняк С++. Создавая тему неужели не заметил, что раздел называется С++ для новичков? По C# есть отдельный набор разделов(.NET).
Вот это предложение должно было содержаться в первом посте... называется "правильно сформулировать вопрос" Если сформулировать его ещё правильней, то получиться что-то вроде "как сравнить две строки?". Ответ: ф-ция http://www.cplusplus.com/reference/clibrary/cstring/strcmp.html(s1, s2) из string.h возвращает отрицательное число, если s1 < s2, положительное, если s1 > s2 и 0, если s1 == s2. Теперь сам термин "строка1 меньше строки2": он означает, что первый символ строки1 на котором начинается её отличие от строки2 меньше, чем онный из строки2. На примере: абвгд абвде Жирным выделены эти самые символы. 'г' меньше 'д' т.к. ('г' - 'д' < 0). |
| Автор: TOREN 3.2.2008, 20:12 |
| archimed7592, вы не могли бы привести готовую часть кода для реализации сортировки? |
| Автор: archimed7592 3.2.2008, 20:39 | ||
Могли бы, только делать этого я не буду Если тебе чего-то непонятно - я постараюсь объяснить. Если тебе лень разбираться - go в Центр Помощи - там тебе датут готовый код, но там ты вряд ли чему-то научишься. |
| Автор: TOREN 3.2.2008, 20:48 |
| archimed7592, просто я привык разбираться на практике, точнее на уже готовом. В любом случае, спасибо. Буду вникать. Позже отпишу в данной теме |