ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 01.01.2025
Просмотров: 758
Скачиваний: 2
СОДЕРЖАНИЕ
230105 - «Программное обеспечение вычислительной техники и автоматизированных систем»
220201- «Управление и информатика в технических системах»
Фундаментальные структуры данных
Лабораторная работа № 3 Алгоритмы базовых и улучшенных сортировок. Порядковые статистики.
Лабораторная работа №4 Полустатические структуры данных
Динамические структуры данных односвязные и двусвязные списковые структуры
Деревья , как динамические структуры данных .
Алгоритмы метода перебора с возвратами - (мпв), "жадные" алгоритмы.
Лабораторный практикум
для специальностей
230105 - «Программное обеспечение вычислительной техники и автоматизированных систем»
220201- «Управление и информатика в технических системах»
Коломна, 2012
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ
Коломенский институт (филиал)
Государственного образовательного учреждения
высшего профессионального образования
«МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ ОТКРЫТЫЙ УНИВЕРСИТЕТ»
________________________________________________________
Кафедра автоматики и электроники в машиностроении
«УТВЕРЖДЕНО»
Учебно-методическим
Советом КИ (ф) МГОУ
Председатель Совета
___________________
______________ 2012 г.
Лабораторный практикум
для специальностей
230105 - «Программное обеспечение вычислительной техники и автоматизированных систем»
220201- «Управление и информатика в технических системах»
Коломна, 2012
-
УДК 004.4
ББК 32.97
П 78
Лабораторный практикум для студентов очной и очно-заочной формы обучения для специальностей 230105 - «Программное обеспечение вычислительной техники и автоматизированных систем», 220201- «Управление и информатика в технических системах»: / Сост. Филоненко И.Н. – Коломна: КИ (ф) МГОУ, 2012. – 65 с.
Лабораторный практикум составлен в соответствии с Государственными образовательными стандартами высшего профессионального образования для специальностей 230105 - «Программное обеспечение вычислительной техники и автоматизированных систем», 220201- «Управление и информатика в технических системах».
Лабораторный практикум одобрен на заседании кафедры «Управление, информатика и вычислительная техника» Коломенского института (филиала) МГОУ имени В.С. Черномырдина, протокол № 7 от 14.03.12 и утвержден учебно-методическим советом.
УДК 004.4
ББК 32.97
© Филоненко И.Н.
© КИ (ф) МГОУ им. В.С. Черномырдина, 2012
Введение
Цикл лабораторных работ направлен на освоение студентами фундаментальных принципов построения эффективных и надежных программ.
«Алгоритмы + структуры данных = программы» (Н.Вирт) - тезис, на котором базируется искусство программирования.
В процессе выполнения лабораторных работ студенты осваивают и анализируют основные алгоритмы обработки различных структур данных. Освоение достигается путем программирования учебных задач на языке Object Pascal в визуальной среде программирования Delphi.
Первая задача: (8 часов) – посвящена изучению фундаментальных структур данных (статических) – массивы, записи, множества и последовательные файлы, также алгоритмам формирования этих структур для реальных данных и их обработки.
Вторая задача: (4 часа) – посвящена алгоритмам поиска в массивах, а также в строках различной организации.
В третьей работе: (8 часов) – студентам предлагается освоение на практике: 1) базовых алгоритмов сортировки массива;
2) улучшенных методов сортировки, построенных на основе простейших, реализованных студентом при выполнении п.1).
Четвертая и пятая работы: (8 часов) – посвящены моделированию таких структур данных, как очереди, стеки (линейные, кольцевые), деки, построение как на базе полустатических данных, так же динамических списковых структур.
Шестая работа: (8 часов) – направлена на освоение алгоритмов построения, обработки и вывода (печати) деревьев различной структуры: бинарные, сбалансированные АВЛ-деревья, сильноветвящиеся Б-деревья.
Седьмая работа: (4 часа) – предназначена для изучения и реализации общих методов обработки данных: алгоритмы перебора с возвратом, динамического программирования и, так называемые, «жадные» алгоритмы для различных задач.
В восьмой работе: (4 часа) – студенты должны написать и отладить программу для быстрого поиска с помощью организации и использования хеш-таблиц.
В девятой работе: (4 часа) – студентами осваиваются, реализуются и анализируются различные алгоритмы на графах.
Предлагаемые варианты задач для реализации достаточно небольшие, чтобы их можно было реализовать полностью в процессе выполнения лабораторных работ.
Лабораторная работа № 1
(8 часов)
Фундаментальные структуры данных
Цель работы: изучение вопросов представления базовых структур (массивов, записей, множеств) в ЭВМ; освоение средств языка Object Pascal (в интегрированной среде Delphi) для реализации алгоритмов обработки фундаментальных структур; так же изучение вопросов организации файлов в ЦВМ, применение средств Object Pascal для обработки файлов.
Домашнее задание:
Изучить формы и форматы представления данных целого, вещественного, символьного, логического и строкового типов.
Изучить отображение фундаментальных структур на ОП ЦВМ и средства Delphi, позволяющие программно организовать и применять в приложениях такие структуры.
Освоить принципы организации файловой системы в Delphi и средства Object Pascal для работы с файлами разных типов.
Порядок выполнения работы
Открыть проект Delphi Structures.
На главной форме (Main Form) установить компонент, управляющий всем проектом – главное меню, и назвать первый пункт «Лабораторная раб. №1» . Расширить меню с помощью вертикальной составляющей: первый вертикальный пункт назвать «Задача 1», второй – «Задача 2».
Добавить к проекту модуль с формой Fundstruct, которая должна появляться на экране при выборе пункта меню «Задача 1». Убедитесь в том, что ваша управляющая структура в проекте работает.
Установить на форму модуля Fundstruct компоненты, обеспечивающие ввод исходных данных, управляющую командную кнопку, и компоненты для вывода результатов на экране – для реализации программного приложения в соответствии с вариантом задания таблицы 1.1.
В обработчике события onClick командной кнопки на языке Object Pascal написать фрагмент программы для ввода исходных данных, обработки по алгоритму варианта задания и вывода результатов в объекты на форму модуля Fundstruct. Отладить программу и продемонстрировать результаты преподавателю.
Добавить к проекту модуль с формой Filestruct, которая должна появляться на экране при выборе пункта меню «Задача 2».
Установить на форму модуля Filestruct компоненты, обеспечивающие ввод данных в соответствии с вариантом задания таблицы 1.2, две управляющих кнопки «Ввод» и «Выборка», компоненты для вывода результатов в соответствии с вариантом.
В обработчике события onClick кнопки «Ввод» написать код для организации текстового файла с данными варианта задания в виде реляционной структуры. Проверить правильность организации полученного файла данных.
В обработчике события onClick кнопки «Выборка» запрограммировать чтение имеющегося текстового файла, выборку требуемых данных в соответствии с вашим вариантом и вывод выборки в другой текстовый файл. Отладить обработчик, убедиться в правильности полученной выборки и продемонстрировать результат преподавателю.
Составить отчет и защитить работу преподавателю.
Таблица 1.1
|
№ вар. |
Текст задания |
|
1. |
Создать верхнюю треугольную матрицу порядка n: в первой строке n элементов, во второй (n-1) элемент, начиная со второго, ...., в n-ой строке -1 элемент на n-ном месте. Заполнить ее единицами и просуммировать для проверки все элементы и отдельно элементы главной диагонали. |
|
2. |
Н причем с ее помощью чтобы можно было вычислить многочлен любой степени, с любыми коэффициентами и при любом значении х. |
|
3. |
Дана непустая последовательность ненулевых целых чисел, за которой следует 0. Определить сколько раз в этой последовательности меняется знак. (Например, в последовательности1, -34, 8, 12, -5 знак меняется 3 раза).
|
|
4. |
Дана последовательность из n целых чисел. Выявить отрезки возрастания в этой последовательности и вывести каждый из них на экран с новой строки. |
|
5. |
Дан
массив Х, в котором N
целых чисел (N |
|
6. |
Дана
последовательность из N
различных целых чисел (N |
|
7. |
Даны
две последовательности по N
целых чисел в каждой (N |
|
8. |
Дана
последовательность из n
целых чисел (n |
|
9. |
Дано
n
вещественных чисел (n |
|
10. |
Даны две последовательности по n целых чисел в каждой (n≤30). Найти наименьшее среди тех членов первой последовательности, которые входят во вторую последовательность (считая, что хотя бы одно такое число есть). |
аписать
программу вычисления значения
многочлена по схеме Горнера:
а0+а1х+а2х2+...аnxn=а0+х(а1+
х(а2+...+х(аn-1+xan)...)