ГБОУ ВПО
«Сургутської ДЕРЖАВНИЙ УНІВЕРСИТЕТ
Ханти-Мансійського автономного округу - Югри »
Кафедра автоматизованих систем обробки інформації та управління
Інформаційні технології
Звіт з лабораторної роботи
Завдання №7
Виконав: Комлєв Артем
Сургут, 2 014
Зміст
Введення
1. Використовуване програмне забезпечення
2. Блок-схема програми
3. Інтерфейс програми
4. Хід роботи
Висновок
Список використаних джерел
Введення
Стек (stack - стопка; читається стек) - структура даних, що представляє собою список елементів, організованих за принципом LIFO (last in - first out, «останнім прийшов - першим вийшов»).
Найчастіше принцип роботи стека порівнюють зі стопкою тарілок: щоб взяти другу зверху, потрібно зняти верхню.
У цифровому обчислювальному комплексі стек називається магазином - по аналогії з магазином у вогнепальній зброї (стрільба почнеться з патрона, зарядженого останнім).
У 1946 Алан Тьюринг ввів поняття стека. А в 1957 році німці Клаус Самельсон і Фрідріх Л. Бауер запатентували ідею.
Стек застосовується у випадках, коли необхідно організувати переривання викликів і повернень, або у випадках, коли потрібно організувати тимчасове сховище даних місця в пам'яті (змінні, параметри функції).
Програмний вид стека використовується для обходу структур даних, наприклад, дерево або граф. При використанні рекурсивних функцій також застосовуватиметься стек, але апаратний його вигляд. Крім цих призначень стек використовується для організації стекової машини.
Для відстеження точок повернення з підпрограм використовується стек викликів.
Рис.1. Організація стека
1. Використовуване програмне забезпечення
Для виконання цієї лабораторної роботи використовувалася операційна система Windows 7, середа розробки MS Visual Studio 2013, мова програмування C #. Використовувалися стандартні бібліотеки, які вже є при створенні програми, також для спрощення роботи в C # використовувався клас List lt; T gt; (цей клас представляє строго типізований перелік об'єктів, доступних за індексом). За допомогою даних технологій вийшло реалізувати стек.
. Блок-схема програми
На рис. 2 зображена блок-схема роботи алгоритму програми. Програма очікує натискання тієї чи іншої кнопки від користувача, залежно від натиснутої кнопки виконуватиметься метод закладений в неї, після виконання заданої умови програма знову чекатиме дію користувача.
Рис. 2. Головне вікно програми
3. Інтерфейс програми
На рис.3 зображено головне вікно програми, ми бачимо, що є поле введення елементів і полі відображення елементів, у нижній частині вона програми знаходяться кнопки для роботи зі стеком
Рис. 3. Головне вікно програми
4. Хід роботи
На початку додаємо кнопку додавання елементів в наш стек. У нас є texbox і listbox. У операторі if реалізується додавання елементів texbox в listbox, після нього відбувається додавання елементів в нашу змінну stack і потім очищення texbox (рис.4).
Рис. 4. Кнопка додавання елементів
Потім створюємо кнопку для видалення елемента в стеку (по типу LIFO). У операторі if реалізується видалення в самому listbox, а після доданий метод видалення елементів у самої змінної stack (рис.5).
Рис. 5. Кнопка видалення останнього елемента
Далі додаємо кнопку для виведення стека із змінної stack, в ній реалізований цикл foreach в якому елементи нашого стека додаються в змінну element типу var і далі елементи виводяться повідомленням для чого використовується MessageBox.Show () (рис. 6)
Рис. 6. Висновок елементів стека із змінної
Наступним кроком, додаємо кнопку в якій реалізується метод «Початок-кінець», цей метод має на увазі таке сортування стека при якому відбувається переприсвоєному індексів, тобто індекс першого елемента присвоюється останньому елементу...