Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовая работа на обработку текста.DOC
Скачиваний:
10
Добавлен:
01.05.2014
Размер:
124.93 Кб
Скачать

4. Спецификация программы.

4.1 Исходные данные.

Исходными данными является текстовый файл ААА.txt, хранящийся в той же директории, что и программа. Существует возможность его просмотра и перезаписи прямо из программы для удобства работы с программой и ее тестирования.

Единственным программным ограничением является ограничение на длину слова- она не должна превышать предопределенной константы: 50 знаков.

Возможны также ограничения, порождаемые компьютером, как то например: нехватка памяти на хранение всех необходимых данных или длительность времени работы программы при объемных входных данных.

4.2 Функции программы по обработке исключительных ситуаций.

Основной исключительной ситуацией является наличие среди исходных данных слова длиной более 50 символов. В этом случае программа выдает сообщение об ошибке (с указанием некорректного слова) и завершает свою работу.

4.3 Выходные данные.

Основными выходными данными являются текстовые файлы с хранящимися в них результатами работы функций, выполняющих непосредственно задание.

Кроме того, выходными данными являются: Меню, управляемое клавишами курсора и клавишей «Ввод». Далее по пунктам меню:

  1. выполнить задание 1.

Данные: Сообщение, об окончании анализа данных и файл с результатом или сообщение о слове, длина которого превышает предопределенное значение и выход из программы.

  1. выполнить задание 2.

Данные: Аналогично п1

  1. записать файл с исходными данными.

Данные: экран записи данных и сообщение о возможности выхода из записи посредством нажатия клавиши «Esc».

  1. просмотреть файл с исходными данными.

Данные: Файл с исходными данными и сообщение о возможности выхода в Меню посредством нажатия любой клавиши.

  1. и 6) – просмотры выходных файлов заданий 1 и 2 соответственно. Данные аналогичны пункту 4)

7) Выход

Данные: выход из программы.

4.4 Сценарий диалога.

При запуске программы появляется Меню, с помощью которого и осуществляется взаимодействие между программой и пользователем. Оно появляется после каждого выполнения любого из пунктов Меню кроме пункта Выход. Для любого пункта, выбранного пользователем, будет совершено некое действие, которое всегда возможно отследить визуально или по программным сообщениям. Во всех пунктах Меню описаны, где необходимо пояснения о том, как вернуться в само Меню (см п 4.3)

5 Разработка структур данных и алгоритмов.

Для выполнения поставленной задачи разработчиком были выработаны следующие концепции и способы реализации:

- Образованные и найденные слова хранятся в отдельномL1-списке. Поэтому для работы со списками был создан вспомогательный модульLLisTT, опирающийся на стандартные процедуры работы со списками. Такой тип хранения был предпочтен ввиду его удобства при работе с просмотром списка и в связи с наличием многих стандартных процедур работы сL1-списками, созданных до начала разработки данной программы

- Все типы, необходимые для реализации было решено хранить в отдельном модуле Infoдля удобства использования и по причине большого их количества. Такое решение было принято с целью простоты понимания всех конструкций данных, используемых в программе.

- Все операции с данными и процедуры выполнения непосредственных заданий производит модуль kur. Это удобно для отладки тем, что процедуры, работающие с принципиально разными объектами не находятся вперемежку, но строго распределены по логичным для них местам.

- Для удобства использования и отладки была создана возможность читать входной и выходные файлы, а также перезаписывать входной. Эта возможность описана функциями содержащимися в отдельном модуле Service.

- Основная программа запускает функцию Меню, описанную в ней и способную управлять необходимыми функциями из вышеописанных модулей.

Алгоритмы решения задач представляют собой сначала чтение входного файла и деление его на слова, которые записываются параллельно в L1-список с учетом количества вхождений. Затем в первой задаче происходит неоднократное чтение списка и вывод элементов в нужном порядке, а во второй – сначала чтение и сортировкабукввсловах,

А потом – вывод слов в файл без повторений и учета количества вхождений.