Обработка динамических структур данных

Автор работы: Пользователь скрыл имя, 20 Июля 2015 в 18:55, курсовая работа

Описание работы

Разработать алгоритм и составить программу обработки списка данных «Гостиница», выполнив следующие этапы:
1. Представление (построение, создание) списка данных в виде линейного однонаправленного списка с элементами сложного типа
2. Выполнить удаление из исходного списка сведений о гостиницах, в которых нет свободных номеров
3. Выполнить перемещение в начало исходного списка сведений о пятизвёздочных гостиницах

Файлы: 1 файл

Обработка динамических структур данных.doc

— 851.00 Кб (Скачать файл)

cout<<"6.Skopirovat v Massiv"<<endl;

cout<<"7.Otobrazit Massiv"<<endl;

cout<<"8.Sortirovat Massiv"<<endl;

cout<<"9.Skopirovat iz Faila"<<endl;

cout<<"10.Nayti zapis' v spiske"<<endl;

cout<<"11.Udalenie otelei bez svobodnih nomerov"<<endl;

cout<<"12.Peremeshenie 5-ti zvezdochnih gostinic"<<endl;

cout<<"0.Vyhod"<<endl;

cout<<endl<<endl;

cout<<"Vyberite:_";

 

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

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

 

4.2 Руководство программиста

 

Данная программа написана с использованием языка Си++. Минимальное количество обрабатываемых данных ограничено (не менее 20). Данные вводятся клавиатуры . Данная программа состоит из основного блока и 12 подпрограмм.

 

Таблица 4.2.1 – Идентификаторы функции add_data

Переменная

Тип

Назначение

i

long

Указывает номер записи в массиве

n

long

Указывает на количество записей в массиве


 

Таблица 4.2.2 – Идентификаторы функции delete_data

Переменная

Тип

Назначение

i

long

Указывает номер удаляемой записи в массиве

n

long

Указывает на количество записей в массиве

j

int

Указывает номер удаляемого элемента


 

Таблица 4.2.3 – Идентификаторы функции sp_copy_mas

Переменная

Тип

Назначение

i

long

Указывает на количество записей в массиве

n

long

Указывает номер записи в массиве


 

 

Таблица 4.2.4 – Идентификаторы функции sort_mas

Переменная

Тип

Назначение

i

int

Указывает на количество записей в массиве

n

long

Указывает на номер записи в массиве

j

int

Указывает на номер записи в массиве

tmp

int

Переменная для копирования записи количества номеров

c[j]

char

Переменная для копирования строк


 

Таблица 4.2.5 – Идентификаторы функции show_mas

Переменная

Тип

Назначение

i

long

Указывает на количество записей в массиве


 

Таблица 4.2.6 – Идентификаторы функции fail

Переменная

Тип

Назначение

i

int

Указывает номер записи в массиве

n

int

Указывает на количество записей в массиве


 

Таблица 4.2.7 – Идентификаторы функции find_data

Переменная

Тип

Назначение

t

long

Указывает количество найденных записей


 

Таблица 4.2.8 – Идентификаторы функции peremesh

Переменная

Тип

Назначение

n

int

Указывает номер записи в массиве


 

Таблица 4.2.9 – Идентификаторы функции udalenie

Переменная

Тип

Назначение

n

int

Указывает номер записи в массиве


 

 

5. Анализ результатов

 

  1. Создание списка данных

Шаг 1. Запуск программы;

Шаг 2. Выбор пункта формирование списка (1);

Шаг 3. Ввод количества гостиниц (n=32)

Шаг 4. Ввод данных

  1. Вывод списка данных

 

Ожидаемый результат

Название

Класс

Общее количество мест

Количество свободных мест

Минимальная Цена

Milana

4

120

32

2000

Kinder

3

130

22

200

GoGs

5

550

36

5000

Finnish

4

600

32

6000

Dobi

3

250

65

400

Max

3

100

22

400

Apple

2

200

35

220

Evas

4

500

12

1200

Fox

2

45

11

500

Lelik

2

30

10

120

Toto

4

250

13

1300

Gomer

1

15

2

100

Frank

5

777

120

5000

Sandra

3

450

35

4000

Rex

4

600

36

6000

Toll

1

50

21

200

Oleg

1

30

25

100

Kira

1

50

10

150

Ermak

3

320

23

150

UFO

5

750

32

6000

Polli

5

450

65

3500

GHOST

5

120

32

5000

jIjI

3

320

23

4500

Kiska

4

120

32

2000

Gosha

2

250

21

1200

Alex

4

300

23

5500

Lumos

4

250

34

4600

Pappa

3

330

125

2000

Reg

5

600

254

5500

Kollags

2

120

0

100

Gagas

1

20

1

80

Hippo

4

450

125

2000


 

Полученный результат

 

 

Вывод: полученный результат совпал с ожидаемым.

  1. Сохранение в файл

Шаг 1. Выберем пункт копировать в файл (5);

Шаг 2. Проверка наличия данных в файле ftext_in.txt.

 

 

 

Вывод: данные сохранены в файле

  1. Удаление гостиниц без свободных номеров

Шаг 1. Выберем в меню пункт удаление (11);

 

Ожидаемый результат:

Название

Класс

Общее количество мест

Количество свободных мест

Минимальная Цена

Milana

4

120

32

2000

Kinder

3

130

22

200

GoGs

5

550

36

5000

Finnish

4

600

32

6000

Dobi

3

250

65

400

Max

3

100

22

400

Apple

2

200

35

220

Evas

4

500

12

1200

Fox

2

45

11

500

Lelik

2

30

10

120

Toto

4

250

13

1300

Gomer

1

15

2

100

Frank

5

777

120

5000

Sandra

3

450

35

4000

Rex

4

600

36

6000

Toll

1

50

21

200

Oleg

1

30

25

100

Kira

1

50

10

150

Ermak

3

320

23

150

UFO

5

750

32

6000

Polli

5

450

65

3500

GHOST

5

120

32

5000

jIjI

3

320

23

4500

Kiska

4

120

32

2000

Gosha

2

250

21

1200

Alex

4

300

23

5500

Lumos

4

250

34

4600

Pappa

3

330

125

2000

Reg

5

600

254

5500

Gagas

1

20

1

80

Hippo

4

450

125

2000


 

Полученный результат

 

 

Вывод: полученный результат совпал с ожидаемым.

  1. Перемещение

Шаг 1. Выбрать в меню пункт перемещение (12)

Шаг 2. Перенести пятизвёздочные гостиницы в начало списка:

 

Следовательно, ожидаемый результат:

Название

Класс

Общее количество мест

Количество свободных мест

Минимальная Цена

Polli

5

450

65

3500

Frank

5

777

120

5000

GHOST

5

120

32

5000

Reg

5

600

254

5500

UFO

5

750

32

6000

GoGs

5

550

36

5000

Milana

4

120

32

2000

Kinder

3

130

22

200

Finnish

4

600

32

6000

Dobi

3

250

65

400

Max

3

100

22

400

Apple

2

200

35

220

Evas

4

500

12

1200

Fox

2

45

11

500

Lelik

2

30

10

120

Toto

4

250

13

1300

Gomer

1

15

2

100

Sandra

3

450

35

4000

Rex

4

600

36

6000

Toll

1

50

21

200

Oleg

1

30

25

100

Kira

1

50

10

150

Ermak

3

320

23

150

jIjI

3

320

23

4500

Kiska

4

120

32

2000

Gosha

2

250

21

1200

Alex

4

300

23

5500

Lumos

4

250

34

4600

Pappa

3

330

125

2000

Gagas

1

20

1

80

Hippo

4

450

125

2000

Информация о работе Обработка динамических структур данных