![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 06.12.2006
Сообщений: 31
|
![]()
Привет всем. Мне нужен ваш помощь, надеюсь что вы не откажитесь. Дали мне задание по Структуры и алгоритмы обработки данных на тему однонаправленное линейно динамический список сделать проект под названием "Библиотека" в Delphi(на языке poscal). Как говорится я теорию поняла читала много литературы по этой теме ну когда начала проектировать уже оказалось что без помощи вас не могу начинать друзья мои. В проекте должна хранятся информация о книгах(Название, автор, год издания, число страниц, количество экземпляров).Можно было удалять, добавлять, сортировать, поиск элементов. У вас какие есть предложения. Я сама на форму поставила кнопку и туда написала макрос который я собрала из литературы, но что то он не работает. Пожалуйста подскажите мне с чего начинать?
|
![]() |
![]() |
![]() |
#2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]()
Два варианта это воспользоваться услугами какой нить СУБД или писать в типизированный файл, типа record, в котором ты опишеш поля : Название, автор, год издания, число страниц, количество экземпляров
I'm learning to live...
|
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 06.12.2006
Сообщений: 31
|
![]()
Мне невзя использовать СУБД.Если я буду использовать типизированный файл там можно проводит сотировку, поиск, добавление, удаление.И с чего мне начинать.Открываю Delphi потом на новой форме ставлю кнопку и в кнопке буду писать макрос да?Или можно по другому начинать проект?
![]() |
![]() |
![]() |
![]() |
#4 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]()
Ну в принципе можно типизированными файлами, но придется все самой писать и сортировку и добавление...
Ну начни хотя бы с добавления. В принципе еще могу посоветовать воспользоваться StringGrid - это даст тебе таблицу, в которой ты будеш размещать свои записи, потом эту таблицу через TFileStream скидывать в файл, а сотировку, поиск, добавление, удаление производить именно в таблице... Это типа контрольной?
I'm learning to live...
|
![]() |
![]() |
![]() |
#5 |
Старожил
Регистрация: 22.05.2007
Сообщений: 9,073
|
![]()
Stilet, в данном случае твой подход не подойдет, т.к. надо судя по всему ручками делать список, его сортировку, сохранение в типизированный файл. Нам наподобие задания давали на паскале (а не на Object Pascal), но без сортировок всяких. StringGrid в принципе подойдет, но только для отображения, а никак не для хранения
|
![]() |
![]() |
![]() |
#6 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]()
В таком случае попросим Риммочку поточнее описать задачу. Ибо ООП и класик паскаль разные. Просто написано Delphi - я и предложил так )
I'm learning to live...
|
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 06.12.2006
Сообщений: 31
|
![]()
Вот мне преподовател написал после моего запроса а помощи. Дисциплина называется Структуры и алгоритмы обработки данных, то есть
главная цель Вашей работы - реализовать основной набор операций с заданной структурой, а именно (по вашему заданию) - Программная реализация однонаправленного линейного динамического списка никакой базы данных и таблиц базы данных в этом проекте нет. Вам нужно грамотно описать структуру линейный список, у которого каджый элемент содержит информационную составляющую, а именно свдения об одной книге библиотеки. Список реализуется на основе динамического распределения памяти. Информационные части тоже хранятся отдельно в динамически выделяемых областях памяти. ВАм нужно будет реализовать все основные действия, оформив все это как приложение в Delphi. Только информационная часть элемента списка в Вашем случае будет содержать не одно какое-то значение, а информацию о книге:: название, автор, год издания, число страниц, количество экземпляров Описание структуры может выглядеть примерно так: Type Inform=record {запись для информационной составляющей элемента} name, avtor: string; { поля для названия книги и автора} God, chis_str, Chis_akz: integer; { год, число страниц, кол-во экз} end; PSpisok = ^ tSpisok; { ссылочный тип для адресации элементов списка} TSpisok = record {тип, определяющий структуру элемента списка} inf: ^ Inform; {инф. часть - хранится отдельно в динамически выделяемых областях памяти} next: PSpisok; {адрес след. элемента списка} end; var head, temp, current: PSpisok; Сама форма может выглядеть след. образом: для отображения текущего состояния списка можно использовать компонент StringGrid. ДОлжны быть след. кнопки: Добавление нового элемента (новой книги) ДО или ПОСЛЕ заданногоЖ Удаление Сортировка А также кнопки Сохранения и Чтения из файла. При нажатии на Сохранить вся существующая структура должна сохраняться в файл на диске (можно использовать текстовый файл). При нажатии Чтение - из файла в StringGrid на форму дожна загружаться заранее сохраненная структура. Никаких таблиц при этом не используем. Вы как считаете это много времени займет? ![]() |
![]() |
![]() |
![]() |
#8 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]()
у-у-у горе... Когда наши преподы наконец поймут что за хитню дают...
Ужас... Мы это помню в Паскале делали. Организовывали Запись, последний элемент которой был указателем на следующую запись... Римма, есть уже какие нибудь наметки и мысли?
I'm learning to live...
|
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 06.12.2006
Сообщений: 31
|
![]()
Вот сижу и размышляю.Надеюсь в голову какая нибудь идея придет.
![]() |
![]() |
![]() |
![]() |
#10 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]()
Ты главное начни - организуй работу с одной переменной типа запись, в нее заноси данные, а потом уже и кучу мона достраивать.
I'm learning to live...
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
ДИНАМИЧЕСКИЕ СТРУКТУРЫ ДАННЫХ | shvarz | Общие вопросы C/C++ | 1 | 10.05.2008 19:48 |