Создание и реализация стека

Создание стека с помощью языка программирования C#. Блок-схема работы алгоритма программы, ее интерфейс. Добавление, удаление и вывод элементов в стеке. Реализация методов "Начало-конец" (переприсвоение индексов) и "Приоритет" (сортировка по возрастанию).

Рубрика Программирование, компьютеры и кибернетика
Вид лабораторная работа
Язык русский
Дата добавления 26.12.2014
Размер файла 924,7 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

ГБОУ ВПО

«СУРГУТСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

Ханты-Мансийского автономного округа - Югры»

Кафедра автоматизированных систем обработки информации и управления

Информационные технологии

Отчет по лабораторной работе

Задание №7

Выполнил: Комлев Артем

Сургут, 2014

Содержание

  • Введение

1. Используемое программное обеспечение

  • 2. Блок-схема программы
  • 3. Интерфейс программы
  • 4. Ход работы
  • Заключение
  • Список использованных источников

Введение

Стек (stack -- стопка; читается стэк) -- структура данных, представляющая собой список элементов, организованных по принципу LIFO (last in -- first out, «последним пришёл -- первым вышел»).

Чаще всего принцип работы стека сравнивают со стопкой тарелок: чтобы взять вторую сверху, нужно снять верхнюю.

В цифровом вычислительном комплексе стек называется магазином -- по аналогии с магазином в огнестрельном оружии (стрельба начнётся с патрона, заряженного последним).

В 1946 Алан Тьюринг ввёл понятие стека. А в 1957 году немцы Клаус Самельсон и Фридрих Л. Бауэр запатентовали идею.

Стек применяется в случаях, когда необходимо организовать прерывания вызовов и возвратов, либо в случаях, когда нужно организовать временное хранилище данных места в памяти (переменные, параметры функции).

Программный вид стека используется для обхода структур данных, например, дерево или граф. При использовании рекурсивных функций также будет применяться стек, но аппаратный его вид. Кроме этих назначений стек используется для организации стековой машины.

Для отслеживания точек возврата из подпрограмм используется стек вызовов.

Рис.1. Организация стека

1. Используемое программное обеспечение

Для выполнения этой лабораторной работы использовалась операционная система Windows 7, среда разработки MS Visual Studio 2013, язык программирования C#. Использовались стандартные библиотеки, которые уже имеются при создании программы, также для упрощения работы в C# использовался класс List<T> (этот класс представляет строго типизированный список объектов, доступных по индексу). С помощью данных технологий получилось реализовать стек.

2. Блок-схема программы

На рис. 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. Вывод элементов стека из переменной

Следующим шагом, добавляем кнопку в которой реализуется метод «Начало-конец», этот метод подразумевает такую сортировку стека при котором происходит переприсвоение индексов, то есть индекс первого элемента присваивается последнему элементу, а индекс последнего, первому элементу (рис.7)

?

Рис.7. Кнопка метода «Начало-конец»

И последним шагом добавляем кнопку в которой реализован метод «Приоритет». В данной программе он будет работать по принципу сортировки по возрастанию (рис.5)

Рис. 8. Кнопка метода «Приоритет»

Заключение

В данной работе при помощи стандартных средств языка программирования C# нам удалось создать простой стек, в котором наглядно продемонстрирован принцип работы стека, в нем было реализовано 5 методов, а именно: добавление элемента, удаление, вывод стека, метод «начало - конец » и метод «приоритет».

стек индекс сортировка

Список использованных источников

1. Электронный ресурс Wikipedia.

2. Герберт Шилдт. C# 4.0: полное руководство. - М.: ООО «Вильямс», 2013. - 1056 с.

3. Электронный ресурс MSDN.

Размещено на Allbest.ru


Подобные документы

  • Понятие стека как структуры данных, где элемент, занесенный первым, извлекается последним. Порядок добавления и удаления элементов списка. Реализация функций стека. Использование стека в алгоритме быстрой сортировки. Основные требования к элементам стека.

    презентация [591,2 K], добавлен 22.10.2013

  • Порядок проектирования программы, демонстрирующей принцип заполнения очереди и стека и принцип удаления элементов из очереди и стека. Определение класса и всех необходимых функций. Программа на языке С, описание возможностей, используемых для алгоритма.

    курсовая работа [254,3 K], добавлен 20.05.2013

  • Аппаратные характеристики системы, использованной для разработки информационного ресурса "Сортировка слиянием". Проектирование логической и физической структуры ресурса, реализация его интерфейса. Основные функции программы, ее тестирование и отладка.

    курсовая работа [2,1 M], добавлен 26.11.2012

  • Создание информационно-аналитической системы (базы данных) "Реализация кондитерских изделий". Использование методов сортировка, добавление абонентов, удаление, изменение, поиск данных, фильтрация, диапазон. Среда разработки - язык программирования Delphi.

    курсовая работа [761,7 K], добавлен 10.04.2011

  • Составление программы сортировки по возрастанию массив из 20 шестнадцатеричных чисел, просматривающей все исходные числа во внешней памяти и выбирающей самое большое число. Блок-схема алгоритма работы программы. Таблица команд и число их выполнения.

    курсовая работа [23,1 K], добавлен 24.05.2015

  • Реализация программы в виде класса, используя для хранения информации контейнеры стандартной библиотеки шаблонов (STL) языка C++. Создание новой базы данных. Вывод информации о всех компьютерах. Удаление элементов контейнера, их поиск по критериям.

    курсовая работа [97,4 K], добавлен 10.01.2015

  • Индекс как объект базы данных, создаваемый с целью повышения производительности выполнения запросов. Реализация индексов структурой В-дерева. Создание программы-приложения, реализующей операцию селекции с помощью индексов. Примеры работы приложения.

    курсовая работа [371,1 K], добавлен 12.08.2011

  • Организация работы базы данных с помощью сбалансированных В-деревьев: принципы, методы добавления, поиска, удаления элементов из структуры. Процедуры, производящие балансировку и слияние записей в блоке. Реализация программы в Научной библиотеке ОрелГТУ.

    курсовая работа [95,3 K], добавлен 12.08.2011

  • Понятие класса как собрания информации, которая включает в себя данные и функции. Создание класса "Дек". Реализация методов: добавления элемента в начало и в конец дека, удаление элемента из начала и конца дека, проверка дека на наличие в нем элементов.

    курсовая работа [568,9 K], добавлен 08.09.2010

  • Разработка игрового проекта на игровом движке Unity 3D в среде программирования MS Visual Studio 2017. Блок-схема алгоритма работы приема сообщений с сервера на клиенте с упрощенным описанием выполняемых команд. Реализация пользовательского интерфейса.

    курсовая работа [1,5 M], добавлен 10.07.2017

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.