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

Лабораторна робота № 1

Списки з каталогами.

Мета роботи: Практично реалізувати списки з каталогами як приклади статичних і динамічних нелінійних структур даних.

Зміст роботи та звіту.

  1. Коротко описати основні відомості про списки з каталогами: їх застосування, способи подавання статичними і динамічними нелінійними списковими структурами.

  2. Розробити алгоритми основних методів обробки списків з каталогами .

  3. Реалізувати розроблені алгоритми програмою, відлагоджений текст якої подати до звіту.

  4. Привести приклади результатів роботи програми.

Завдання :

Розробити програму обробки результатів змагань : 1) з бігу на короткі дистанції( чоловіки і жінки на 100 м, 200 м, 110 м з бар'єрами); 2) з бігу на середні дистанції ( чоловіки і жінки на 400 м, 800 м, 1500 м ); 3) з бігу на довгі дистанції( чоловіки і жінки на 5000 м, 10000 м, марафон); 4) з стрибків в довжину, в висоту, потрійним, з жердиною ( чоловіки і жінки ); 5) з плавання вільним стилем( чоловіки і жінки на 100 м, 400 м, 1500 м); 6) з плавання брасом( чоловіки і жінки на 100 м, 400 м, 1500 м); 7) з плавання на спині( чоловіки і жінки на 100 м, 400 м, 1500 м); 8) з плавання батерфляєм( чоловіки і жінки на 100 м, 400 м, 1500 м); 9) з метання диску, спису, молота ( чоловіки і жінки);

10) з бігу на ковзанах ( чоловіки і жінки на 500 м, 1000 м, 5000 м )

В програмі реалізувати основні операції обробки списків з каталогами : формування, додавання , вилучення і пошук записів в списку. Варіанти подавання списків: 1. Послідовно – індексно- послідовне; 2. Послідовно – індексно – зв’язне; 3. Зв’язно – індексно послідовне; 4. Зв’язно – індексно – зв’язне.

Короткі теоретичні відомості.

Списки з каталогами являють собою приклад статичних та динамічних нелінійних структур.

Списки з каталогами використовуються для збереження інформації в спеціальному вигляді. В ролі каталогів може виступати інформація, що характерна для всіх даних і забезпечує їх повну ідентифікацію. При цьому об'єм цієї інформації постійний, а кількість може змінюватись. В ролі підкаталогів виступає додаткова інформація, кількість і розмір якої може бути різним і динамічно змінюватись.

Існує три види представлення списків з каталогами:

  1. Послідовно - індексно - послідовний;

  2. Послідовно - індексно - зв'язний або зв'язний - індексно - послідовний;

  3. Зв'язний - індексно - зв'язний;

Для реалізації першого виду представлення списків з каталогами можна використовувати просту структуру - масив записів. Каталоги Підкаталоги

Каталог 1 Каталог 2 …. Каталог N

Підкаталог11 Підкаталог 12 …. Підкаталог 1M Підкаталог 21 Підкаталог 22 … Підкаталог 2M … … … … Підкаталог N1 Підкаталог N2 … Підкаталог NM

Опис послідовно індексно послідовного списку засобами МВР :

а) опис елемента підкаталога: int m=50; // Кількість спортсменів на кожній дистанції int n= 10; // Кількість дистанцій змагання по бігу struct TelPodk{ int StartNum; char Strana []; char FIO[]; float Rezultat;

} Podk[m];

б) опис елемента каталога:

struct TelKat{ char Dist[]; TelPodk *Uk; } PiPsp[n]; Для реалізації другого виду представлення можна використовувати або масив, який крім інформації каталогу має ще й вказівку на перший елемент підкаталогу, який в свою чергу можна представити у вигляді списку. Або це буде список, змістовна частина якого буде зберігати інформацію каталогу та масив з інформацією підкаталогу.

Опис послідовно індексно зв'язного списку засобами МВР :

а) опис елемента підкаталога: struct TelPodk{ int StartNum; char Strana []; char FIO[]; float Rezultat; TelPodk *Next;

} *Podk[m];

б) опис елемента каталога: struct TelKat { char Dist[]; TelPodk * Uk; } PiSsp[n]; Третій вид представлення можна реалізувати за допомогою списків, де кожен елемент списку каталогів містить інформацію каталогу та вказівку на перший елемент списку підкаталогів.

Опис зв'язно індексно зв'язного списку засобами МВР :

а) опис елемента підкаталога: struct TelPodk{ int StartNum; char Strana []; char FIO[]; float Rezultat; TelPodk *Next;

} ;

б) опис елемента каталога: struct TelKat { char Dist[]; TelPodk *UkPodk; TelKat * Uk; };

Всі без винятку операції, які дозволені над статичними і дінамічними структурами даних , дозволені і реалізуються при обробці даних, представляємих списками з каталогами того чи іншого подавання. Зручність обробки даних, ефективність використання пам'яті, швидкість доступу є критеріями вибору того чи іншого способу подавання і частіш всього визначається особливостями задачі і предметної галузі. Класи задач, в яких перевага надається використанню списків з каталогами , належать до задач розбудови інформаційних систем.

Запити до захисту лабораторної роботи.

  1. Способи подавання каталогу і підкаталогу в послідовно індексно-послідовному списку.

  2. Зробити опис елемента каталогу цього списку.

  3. Привести опис елемента підкаталогу списка.

  4. Способи подавання каталогу і підкаталогу в зв'язному індексно-послідовному списку.

  5. Зробити опис елемента каталогу цього списку.

  6. Привести опис елемента підкаталогу списка.

  7. Способи подавання каталогу і підкаталогу в зв'язному індексно-зв'язному списку.

  8. Зробити опис елемента каталогу цього списку.

  9. Привести опис елемента підкаталогу списка.

  10. Розробити алгоритм пошуку елемента підкаталога в зв'язному індексно-зв'язному списку.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]