
- •Содержание лабораторных работ по дисциплине «Информатика и программирование» группы 11пи, 3 семестр
- •Лабораторная работа №1. Создание dll
- •Лабораторная работа №2. Односвязный динамический список
- •Лабораторная работа №3. Двусвязный динамический список
- •Ввод элементов списка;
- •Удаление текущего элемента из списка;
- •Ввод элементов списка;
- •Удаление текущего элемента из списка;
- •Ввод элементов списка;
- •Удаление текущего элемента из списка;
- •Ввод элементов списка;
- •Удаление текущего элемента из списка;
- •Ввод элементов списка;
- •Удаление текущего элемента из списка;
- •Ввод элементов списка;
- •Удаление текущего элемента из списка;
- •Ввод элементов списка;
- •Удаление текущего элемента из списка;
- •Ввод элементов списка;
- •Удаление текущего элемента из списка;
- •Ввод элементов списка;
- •Удаление текущего элемента из списка;
- •Ввод элементов списка;
- •Удаление текущего элемента из списка;
- •Ввод элементов списка;
- •Удаление текущего элемента из списка;
- •Ввод элементов списка;
- •Удаление текущего элемента из списка;
- •Ввод элементов списка;
- •Удаление текущего элемента из списка;
- •Ввод элементов списка;
- •Удаление текущего элемента из списка;
- •Лабораторная работа №4. Работа с разнообразными видами списков
- •Лабораторная работа №5. Создание классов
- •Лабораторная работа №6. Строки и массивы в функциях
- •Первую страницу отчета оформить в соответствии с приложением 1 и проставить нумерацию;
- •Лабораторная работа №7. Работа с бд просмотр
- •Лабораторная работа №8. Работа с бд ввод информации
- •Лабораторная работа №9. Исключительные ситуации
- •Лабораторная работа №10. Работа с датой и временем
- •Приложение 1.
Создать приложение, включающее 3 формы. На стартовой форме предусмотреть картинку и меню с обязательными разделами «О программе» и «Закрыть». На вспомогательной форме (№3) отобразить информацию об авторе. Завод характеризуется данными: наименование цеха, потребление электроэнергии в сутки, количество выпускаемой продукции. Разработать и реализовать список цехов в виде двусвязного динамического списка. Обеспечить:
Ввод элементов списка;
вывод всего списка в отдельной модальной форме (№2) с помощью компонента Label, занимающей всю форму целиком;
навигацию по элементам списка в обе стороны (используя компоненты Button) с отображением текущей записи в 3х компонентах Edit. Учесть возможность перехода к первому и последнему элементам списка;
Удаление текущего элемента из списка;
перестановку местами текущий элемент и последний элемент списка.
Предусмотреть все исключительные ситуации: пустой список, недостаточное количество элементов в списке, участие в операции первого/последнего элемента списка и т.д. Все операции над списком продублировать в меню в соответствующем разделе. Предусмотреть работу со списком (с дублированием в меню): a) Определить наиболее энергоемкий цех. b) Определить удельную стоимость (электроэнергия/кол-во продукции) продукции для каждого цеха.
Лабораторная работа №4. Работа с разнообразными видами списков
Правила оформления отчета:
отчет должен быть выполнен в формате документа MS Word (формат файла: ЛабРаб№4 ФамилияИО);
первую страницу отчета оформить в соответствии с приложением 1 и проставить нумерацию;
изобразить внешний вид формы (рисунок), с указанием способов ввода и вывода. Привести таблицу с указанием компонентов, используемых в программе и их свойства со значениями, которые устанавливались в процессе проектирования;
привести программный код алгоритма с графическими комментариями, реализующий главную задачу. Для демонстрации можно использовать не весь набор данных, а 3-4 тестовых значений;
изобразить поведение программы с помощью диаграммы состояний;
изобразить диаграмму компонентов для разработанного проекта;
указать тестовые значения с результатами в виде «снимков» (рисунков) разработанного приложения. Для каждого примера с тестовыми значениями представить поведение программы с помощью диаграммы последовательностей.
Реализовать стек в виде односвязного списка. Разработать для стека операции включение, исключение, определение размера, очистка и неразрушающее чтение, с помощью которых решить задачу. Заполнить стек случайными действительными числами от -100 до 100. Разделить содержимое стека на два стека четных и нечетных чисел соответственно. При этом записанный в какой-либо новый стек элемент из исходного стека удаляется. После выполнения операции разделения в исходном стеке данных нет. Значения элементов стеков до и после перестановки вывести с помощью многострочных компонентов.
Реализовать кольцевой список в виде односвязного списка. Разработать для стека операции включение, исключение, определение размера и очистка, с помощью которых решить задачу. N человек получают номера от 1 до N и встают в круг. Начиная с первого человека, из круга исключается каждый k-й до тех пор, пока в круге не остается один человек. Найти номер этого человека в первоначальной расстановке. Значения элементов списка до начала исключения вывести с помощью многострочного компонента.
Реализовать стек в виде односвязного списка. Разработать для стека операции включение, исключение, определение размера, очистка и неразрушающее чтение, с помощью которых решить задачу. Дана величина a строкового типа из четного количества символов (стек №1). Получить и напечатать величину b (стек №2), состоящую из символов первой половины величины a, записанных в обратном порядке, после которых идут символы второй половины величины a, также записанные в обратном порядке (используя промежуточный стек №3). Например, при а = "привет" b должно быть равно "ирптев".
Реализовать очередь в виде односвязного списка. Разработать для очереди операции включение, исключение, определение размера, очистка и неразрушающее чтение, с помощью которых решить задачу. Заполнить очередь случайными действительными числами от -100 до 100. Переставить ее члены так, чтобы сначала расположились все ее положительные члены, а потом - все отрицательные. Порядок как среди положительных членов, так и среди отрицательных должен быть сохранен прежним. Для временного хранения положительных и отрицательных элементов использовать стеки. Значения элементов очереди до и после перестановки вывести с помощью многострочных компонентов.
Реализовать стек в виде односвязного списка. Разработать для стека операции включение, исключение, определение размера, очистка и неразрушающее чтение, с помощью которых решить задачу. Дана стихотворная форма, минимум из 4х строк (стек №1). Получить и напечатать стих (стек №2), состоящий из строк, следующих в обратном порядке.
Реализовать стек в виде односвязного списка. Разработать для стека операции включение, исключение, определение размера, очистка и неразрушающее чтение, с помощью которых решить задачу. Заполнить стек случайными действительными числами от -100 до 100. Удалить из стека все числа кратные заданному пользователем N. Значения элементов стеков до и после перестановки вывести с помощью многострочных компонентов.
Реализовать кольцевой список в виде односвязного списка. Разработать для стека операции включение, исключение, определение размера и очистка, с помощью которых решить задачу. N человек располагаются по кругу. Начав отсчет от первого, удаляют каждого k-го, смыкая круг после каждого удаления. Определить порядок удаления человек из круга в виде стека. Значения элементов списков до и после перестановки вывести с помощью многострочных компонентов.
Реализовать стек в виде односвязного списка. Разработать для стека операции включение, исключение, определение размера, очистка и неразрушающее чтение, с помощью которых решить задачу. Заполнить стек случайными действительными числами от -100 до 100. Удалить из него все отрицательные элементы, используя второй стек и одну переменную. Значения элементов стеков до и после перестановки вывести с помощью многострочных компонентов.
Реализовать очередь в виде односвязного списка. Разработать для очереди операции включение, исключение, определение размера, очистка и неразрушающее чтение, с помощью которых решить задачу. Заполнить очередь случайными действительными числами от -100 до 100. Переставить ее члены так, чтобы сначала расположились все ее четные члены, а потом - все нечетные. Порядок как среди четных членов, так и среди нечетных должен быть сохранен прежним. Для временного хранения четных и нечетных элементов использовать стеки. Значения элементов очереди до и после перестановки вывести с помощью многострочных компонентов.
Реализовать стек в виде односвязного списка. Разработать для стека операции включение, исключение, определение размера, очистка и неразрушающее чтение, с помощью которых решить задачу. Заполнить стек случайными действительными числами от -100 до 100. Удалить из стека, каждый второй элемент. На дне находится первый элемент. Значения элементов стеков до и после перестановки вывести с помощью многострочных компонентов.
Реализовать кольцевой список в виде двусвязного списка. Разработать для стека операции включение, исключение, определение размера и очистка, с помощью которых решить задачу. Заполнить список случайными действительными числами от -100 до 100. Отсортировать значения списка по возрастанию. Значения элементов списка до и после перестановки вывести с помощью многострочных компонентов.
Реализовать стек в виде односвязного списка. Разработать для стека операции включение, исключение, определение размера, очистка и неразрушающее чтение, с помощью которых решить задачу. Заполнить стек случайными действительными числами от -100 до 100. Разделить содержимое стека на два стека положительных и отрицательных чисел соответственно. При этом записанный в какой-либо новый стек элемент из исходного стека удаляется. После выполнения операции разделения в исходном стеке данных нет. Значения элементов стеков до и после перестановки вывести с помощью многострочных компонентов.
Реализовать очередь в виде односвязного списка. Разработать для очереди операции включение, исключение, определение размера, очистка и неразрушающее чтение, с помощью которых решить задачу. Заполнить очередь случайными действительными числами от -100 до 100. Переставить ее члены так, чтобы сначала расположились все ее однозначные члены, а потом - все двузначные. Порядок как среди однозначных членов, так и среди двузначных должен быть сохранен прежним. Для временного хранения однозначных и двузначных элементов использовать стеки. Значения элементов очереди до и после перестановки вывести с помощью многострочных компонентов.
Реализовать стек в виде односвязного списка. Разработать для стека операции включение, исключение, определение размера, очистка и неразрушающее чтение, с помощью которых решить задачу. Дана величина a строкового типа из четного количества символов (стек №1). Получить и напечатать величину b (стек №2), состоящую из символов первой половины величины a, после которых идут символы второй половины величины a, записанные в обратном порядке (используя промежуточный стек №3). Например, при а = "привет" b должно быть равно "притев".
Реализовать стек в виде односвязного списка. Разработать для стека операции включение, исключение, определение размера, очистка и неразрушающее чтение, с помощью которых решить задачу. Заполнить стек случайными действительными числами от -100 до 100. Удалить из него все однозначные элементы, используя второй стек и одну переменную. Значения элементов стеков до и после перестановки вывести с помощью многострочных компонентов.
Реализовать кольцевой список в виде односвязного списка. Разработать для стека операции включение, исключение, определение размера и очистка, с помощью которых решить задачу. N человек получают номера от 1 до N и встают в круг. Начиная с первого человека, из круга исключается каждый k-й и следующий за ним до тех пор, пока в круге не остается один человек (если в списке остается только два человека, то исключается k-й человек). Найти номер оставшегося человека в первоначальной расстановке. Значения элементов списка до начала исключения вывести с помощью многострочного компонента.
Реализовать стек в виде односвязного списка. Разработать для стека операции включение, исключение, определение размера, очистка и неразрушающее чтение, с помощью которых решить задачу. Дана величина a строкового типа из четного количества символов (стек №1). Получить и напечатать величину b (стек №2), состоящую из символов первой половины величины a, записанных в обратном порядке, после которых идут символы второй половины величины a (используя промежуточный стек №3). Например, при а = "привет" b должно быть равно "ирпвет".
Реализовать очередь в виде односвязного списка. Разработать для очереди операции включение, исключение, определение размера, очистка и неразрушающее чтение, с помощью которых решить задачу. Заполнить очередь случайными действительными числами от -100 до 100. Переставить ее члены так, чтобы сначала расположились все ее отрицательные члены, а потом - все положительные. Порядок как среди положительных членов, так и среди отрицательных должен быть сохранен прежним. Для временного хранения положительных и отрицательных элементов использовать стеки. Значения элементов очереди до и после перестановки вывести с помощью многострочных компонентов.
Реализовать стек в виде односвязного списка. Разработать для стека операции включение, исключение, определение размера, очистка и неразрушающее чтение, с помощью которых решить задачу. Заполнить стек случайными действительными числами от -100 до 100. Удалить из него все положительные элементы, используя второй стек и одну переменную. Значения элементов стеков до и после перестановки вывести с помощью многострочных компонентов.
Реализовать кольцевой список в виде односвязного списка. Разработать для стека операции включение, исключение, определение размера и очистка, с помощью которых решить задачу. N человек располагаются по кругу. Начав отсчет от первого, удаляют каждого k-го и следующего за ним, смыкая круг после каждого удаления. Определить порядок удаления человек из круга в виде стека. Значения элементов списков до и после перестановки вывести с помощью многострочных компонентов.
Реализовать стек в виде односвязного списка. Разработать для стека операции включение, исключение, определение размера, очистка и неразрушающее чтение, с помощью которых решить задачу. Заполнить стек случайными действительными числами от -100 до 100. Удалить из стека, каждый третий элемент. На дне находится первый элемент. Значения элементов стеков до и после перестановки вывести с помощью многострочных компонентов.
Реализовать очередь в виде односвязного списка. Разработать для очереди операции включение, исключение, определение размера, очистка и неразрушающее чтение, с помощью которых решить задачу. Заполнить очередь случайными действительными числами от -100 до 100. Переставить ее члены так, чтобы сначала расположились все ее нечетные члены, а потом - все четные. Порядок как среди четных членов, так и среди нечетных должен быть сохранен прежним. Для временного хранения четных и нечетных элементов использовать стеки. Значения элементов очереди до и после перестановки вывести с помощью многострочных компонентов.
Реализовать стек в виде односвязного списка. Разработать для стека операции включение, исключение, определение размера, очистка и неразрушающее чтение, с помощью которых решить задачу. Заполнить стек случайными действительными числами от -100 до 100. Удалить из стека все числа не кратные заданному пользователем N. Значения элементов стеков до и после перестановки вывести с помощью многострочных компонентов.
Реализовать стек в виде односвязного списка. Разработать для стека операции включение, исключение, определение размера, очистка и неразрушающее чтение, с помощью которых решить задачу. Заполнить стек случайными действительными числами от -100 до 100. Разделить содержимое стека на два стека однозначных и двузначных чисел соответственно. При этом записанный в какой-либо новый стек элемент из исходного стека удаляется. После выполнения операции разделения в исходном стеке данных нет. Значения элементов стеков до и после перестановки вывести с помощью многострочных компонентов.
Реализовать кольцевой список в виде двусвязного списка. Разработать для стека операции включение, исключение, определение размера и очистка, с помощью которых решить задачу. Заполнить список случайными действительными числами от -100 до 100. Отсортировать значения списка по убыванию. Значения элементов списка до и после перестановки вывести с помощью многострочных компонентов.
Реализовать стек в виде односвязного списка. Разработать для стека операции включение, исключение, определение размера, очистка и неразрушающее чтение, с помощью которых решить задачу. Дана последовательность символов, записанных в строчку (стек №1). Получить и напечатать обратную последовательность символов (стек №2).
Реализовать очередь в виде односвязного списка. Разработать для очереди операции включение, исключение, определение размера, очистка и неразрушающее чтение, с помощью которых решить задачу. Заполнить очередь случайными действительными числами от -100 до 100. Переставить ее члены так, чтобы сначала расположились все ее двузначные члены, а потом - все однозначные. Порядок как среди однозначных членов, так и среди двузначных должен быть сохранен прежним. Для временного хранения однозначных и двузначных элементов использовать стеки. Значения элементов очереди до и после перестановки вывести с помощью многострочных компонентов.
Реализовать стек в виде односвязного списка. Разработать для стека операции включение, исключение, определение размера, очистка и неразрушающее чтение, с помощью которых решить задачу. Заполнить стек случайными действительными числами от -100 до 100. Удалить из него все четные элементы, используя второй стек и одну переменную. Значения элементов стеков до и после перестановки вывести с помощью многострочных компонентов.
Реализовать стек в виде односвязного списка. Разработать для стека операции включение, исключение, определение размера, очистка и неразрушающее чтение, с помощью которых решить задачу. Заполнить стек случайными действительными числами от -100 до 100. Разделить содержимое стека на два стека "круглых" и оставшихся чисел соответственно. При этом записанный в какой-либо новый стек элемент из исходного стека удаляется. После выполнения операции разделения в исходном стеке данных нет. Значения элементов стеков до и после перестановки вывести с помощью многострочных компонентов.
Реализовать стек в виде односвязного списка. Разработать для стека операции включение, исключение, определение размера, очистка и неразрушающее чтение, с помощью которых решить задачу. Заполнить стек случайными действительными числами от -100 до 100. Удалить из него все нечетные элементы, используя второй стек и одну переменную. Значения элементов стеков до и после перестановки вывести с помощью многострочных компонентов.