Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Федеральное агентство по образованию.doc
Скачиваний:
4
Добавлен:
20.09.2019
Размер:
220.16 Кб
Скачать

Федеральное агентство по образованию

Московский Государственный институт

электроники и математики (ТУ)

Кафедра «Вычислительные системы и сети»

Курсовая работа.

по дисциплине «Программирование на языках высокого уровня»

на тему «Динамическое формирование и преобразование списков и структур»

Вариант 11

Исполнитель

ст.гр. СВБС-21

______________ К.Д.Матросов

Руководитель

ст. преп. каф. ВСиС

__________________Л.М.Афонина

2012

Содержание.

1. Задание на курсовую работу. 3

2. Постановка задачи. 3

3. Внешние спецификации программы.. 4

4. Метод решения. 5

5. Структура программы. 5

6. Описание алгоритма программы. 6

7. Текст программы. 11

8. Тестовые примеры. 17

9. Выводы. 18

10. Литература. 18

11. Приложение. 18

1. Задание на курсовую работу.

Дано:

Структура:

Тип списка: Стек

Необходимо:

Написать программу, которая выводит из файла структуры «Магазин», размещает их в стек, выполняет добавление в список нового магазина перед первым на той же улице, если такого нет – то в конец списка.

2. Постановка задачи.

Перечень исходных данных.

namevh – имя текстового файла с информацией

namevih – имя текстового файла для вывода

Перечень выходных данных.

Преобразованный список.

Сообщение о результате работы программы.

3. Внешние спецификации программы..

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

Текстовый файл со структурами магазин:

Номер магазина_Город_Улица_Номер дома

Наименование продукта_Цена_Срок реализации (в днях)

* 0 0 (разделитель между структурами)

Введите имя входного файла: <имя_файла >

Введите имя выходного файла: <имя_файла >

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

Текстовый файл со структурами магазин:

Исходный старый список _______________________________________________________________ Преобразованный (отсортированный, дополненный) список

Сообщения.

  1. Сообщение с запросом на файл с данными. Введите имя входного файла:

  2. Сообщение с запросом на файл для данных. Введите имя выходного файла:

  3. Сообщения, связанные с обработкой информационного файла

    1. Файл существует и есть информация.

      1. На экран выводятся исходные данные и отсортированные.

      2. Запрос на ввод нового магазина. Вводим новый магазин (Д)?

        1. Если «Да» Ввод магазина: Введите адрес: Номер магазина, Город, Улица, Номер дома (формат ввода) Номер магазина: Город: Улица: Номер дома: (*) Запрос на ввод продукта. Вводим продукты (Д)? Если «ДА» Наименование: Цена: Срок: Запрос на продолжение ввода продуктов. Продолжаем вводить продукты? (Д) Если «ДА». То пункт (*) Если «НЕТ». То пункт (II)

        2. Если «НЕТ» Итог: На экран выводятся итоговые данные. Информация записана в файл.

    2. Файл не существует. Ошибка с входными данными.

    3. Файл пустой. Файл пустой.

4. Метод решения.

Поиск места для вставки нового магазина осуществляется путем «прохождения» по всем данным (отсортированным методом пузырька) и сравнения названия городов и улиц. Если названия городов и улиц совпали, то происходит вставка. При этом «адрес» памяти последующего магазина записывается в данные к новому магазину, а предыдущий получает ссылку на новый. Иначе добавление происходит в конец списка. Предыдущий магазин получает ссылку на новый, а новый – NULL.