
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
СХІДНОУКРАЇНСЬКИЙ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ
імені ВОЛОДИМИРА ДАЛЯ
КАФЕДРА КОМП’ЮТЕРНИХ СИСТЕМ ТА МЕРЕЖ
КУРСОВА РОБОТА
з дисципліни: “Програмування ”
Тема: “Програмування на мові Visual C++. Лінійні списки.”
Виконав: |
студент гр. IT-431 |
|
|
|
Калінін О.Є |
|
|
Керівник: |
Доц. Бєлозьоров Є.В. |
|
|
ЛУГАНСЬК 2014
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
СХІДНОУКРАЇНСЬКИЙ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ
імені ВОЛОДИМИРА ДАЛЯ
КАФЕДРА КОМП’ЮТЕРНИХ СИСТЕМ ТА МЕРЕЖ
ЗАВДАННЯ
до курсової роботи з дисципліни: “Програмування ”
Тема: “Програмування на мові Visual C++. Лінійні списки.”
студента гр. IT-431 |
|
Калінін О.Є |
|
Тема 7. Організація динамічної інформації про формування файлів у файловій системі у вигляді списку.
Необхідно: написати програму мовою С++, у якій виконати формування односпрямованого списку відповідно до постановки завдання, введення даних елементів списку з урахуванням типу інформаційного поля, їхню обробку й виведення на екран у зазначеному форматі. Для зберігання даних списків варто використовувати ресурси динамічної пам'яті.
Дано: Скласти програму, яка містить динамічну інформацію про каталоги файлів. У файловій системі каталог файлів організований у вигляді лінійного списку. Для кожного файлу в каталозі містяться наступні відомості:
ім'я файлу;
дата створення;
кількість звернень до файлу.
Написати програму, яка забезпечує:
початкове формування каталогу файлів;
виведення каталогу файлів;
видалення файлів;
вибірку файлу з найбільшою кількістю звернень.
діалог за допомогою меню і контроль помилок при введенні.
Керівник роботи: |
Доц. Бєлозьоров Є.В |
|
|
Дата отримання завдання |
_____________________ |
Студент |
Калінін О.Є |
|
|
Результат виконання курсової роботи: _____________________
Підпис викладача __________________________
Метод і алгоритм розв’язання задачі
Список — структура даних, яка складається з вузлів, кожен з яких містить як власні дані, так і одну або два посилання («зв'язки») на наступне і/або попереднє поле. Принциповою перевагою перед масивом є структурна гнучкість: порядок елементів зв'язного списку може не збігатися з порядком розташування елементів даних в пам'яті комп'ютера, а порядок обходу списку завжди явно задається його внутрішніми зв'язками.
Під кожний новий елемент списку в елемент списку виділяється ділянка пам’яті, у нього копіюються дані, які вводяться з клавіатури. Якщо у списку є елементи, то з ними можна провести деякі операції, якщо ні, то вказівником на початок списку присвоюється покажчик на новий елемент. Інакше проходом за списком знаходиться останній елемент, і йому присвоюється покажчик на новий елемент. В даному випадку використовується тип лінійного списку – стек. Його принцип - Last - In - First- Out – «останнім прийшов - першим виключається».
Для ініціалізації нового елемента списку використовується ім’я файлу, дата його створення та кількість звернень до нього. Всі дані записуються з клавіатури.
Начало

Вывод пунктов меню
Ввод пользователь
«1»

Заполнить список
«2»

Удалить файл
«3»
«4»
«5»
выход


Вывод на экран файла с наибольшим количеством обращений
Вывод списка на экран
да
да
да
да
да
Нет
Нет
Нет
Нет
Нет
Начало Заполнение

Вывод: Введите количество файлов
Ввод:Количество файлов
For (Количество файлов=N)
Ввод: Имя файла
Ввод:Дата создания
Ввод: Количество обращений

Конец: Заполнение

Переход к след. элементу
да
Нет
Начало Вывод
While(Кол-во файлов=0)
Переход к след. элементу
Конец
Ввод: Имя файла
Ввод:Дата создания
Ввод: Количество обращений
да
Нет
Начало Удаление файла
После указателя ничего нет
For(Не дошли до конца)
Создаем указатель на єлемент, которій хотим удалить
Удаляем его
Текущий элемент принимает адрес первого
Конец
Есть совпадение
Удаляем файл
Переход к след. элементу
да
да
Нет
Нет