- •Министерство образования, науки, молодежи и спорта украины
- •Варианты заданий по лабораторным работам по вычислительному практикуму Общие требования к оформлению лабораторных работ.
- •Лабораторная работа № 1.
- •Лабораторная работа № 2.
- •Лабораторная работа № 3.
- •Лабораторная работа № 4.
- •Лабораторная работа № 5.
- •Лабораторная работа № 6.
- •Лабораторная работа № 7.
- •Лабораторная работа № 8.
- •Лабораторная работа № 9.
- •Варианты матриц:
- •Схемы физической структуры данных
- •Варианты обработки матриц:
- •Лабораторная работа № 10.
- •Варианты разреженных матриц:
- •Схемы физической структуры данных
- •Варианты обработки матриц:
- •Лабораторная работа № 11.
Схемы физической структуры данных
Для матриц со случайным расположением элементов:
Три массива, длина которых равна количеству не фоновых элементов: массив для хранения не фоновых элементов и два массива для хранения индексов строки и столбца не фоновых элементов;
Одномерный массив для хранения не фоновых элементов и два вспомогательных массива: один хранит номер столбца не фонового элемента, другой размерностью количества строк матрицы для хранения номера первого не фонового элемента i-той строки в одномерном представлении
Варианты обработки матриц:
Найти максимальный элемент и его позицию в матрице.
Определить индексы и значения всех элементов, превышающих среднее арифметическое значение элементов матрицы.
Определить индексы и значения всех элементов, лежащих в заданном диапазоне (вводится с клавиатуры).
Определить индексы и значения всех элементов, меньших значения (max+min)/2.
Найти разницу между средним арифметическим значением элементов матрицы и значением (max+min)/2.
Определить минимальный положительный элемент матрицы и его индексы.
Определить максимальный отрицательный элемент матрицы и его индексы.
Найти минимальный элемент и его позицию в матрице.
Определить индексы и значения всех элементов, не превышающих среднее арифметическое значение элементов матрицы.
Определить индексы и значения всех элементов, не лежащих в заданном диапазоне (вводится с клавиатуры).
Определить индексы и значения всех элементов, больших значения (max+min)/2.
Найти разницу между средним арифметическим значением элементов матрицы и значением (max-min).
Определить минимальный по модулю элемент матрицы и его индексы.
Определить максимальный по модулю элемент матрицы и его индексы.
Лабораторная работа № 11.
Тема: Обработка динамических структур.
Цель работы: получить практические навыки организации и обработки связных списков.
Ход работы:
Выбрать вариант задания.
Реализовать заданную структуру данных. Для каждой структуры данных реализовать операции создания и удаления всего списка, а также добавления и удаления узлов.
Разработать алгоритм, реализующий индивидуальное задание.
Реализовать алгоритм.
Подготовить отчет о выполнении лабораторной работы.
Все манипуляции со списками необходимо выполнять через манипуляции с указателями, то есть если необходимо переставить местами два узла в списке, то следует соответствующим образом перевести указатели, а не переприсвоить значения информационной части узлов.
Варианты задания:
1. Описать структуру Student, содержащую следующие поля: фамилия и инициалы; номер группы; успеваемость (массив из пяти элементов).
Написать программу, выполняющую следующие действия:
упорядочить записи по возрастанию номера группы;
вывести фамилии и номера групп для студентов, средний балл которых больше 4,0;
если таких студентов нет, вывести соответствующее сообщение.
2. Описать структуру Student, содержащую следующие поля: фамилия и инициалы; номер группы; успеваемость (массив из пяти элементов).
Написать программу, выполняющую следующие действия:
упорядочить записи по возрастанию среднего балла;
вывести ведомость на получение стипендии: фамилии и номера групп для студентов, которые имеют оценки 4 и 5;
если таких студентов нет, вывести соответствующее сообщение.
3. Описать структуру Student, содержащую следующие поля: фамилия и инициалы; номер группы; успеваемость (массив из пяти элементов).
Написать программу, выполняющую следующие действия:
упорядочить записи по алфавиту;
вывести фамилии и номера групп для студентов, которые имеют хотя бы одну оценку 2;
если таких студентов нет, вывести соответствующее сообщение.
4. Описать структуру Aeroflot, содержащую следующие поля: название пункта назначения; номер рейса; тип самолета.
Написать программу, выполняющую следующие действия:
упорядочить записи по номеру рейса;
вывести номера рейсов и типы самолетов, вылетающих в пункт назначения, название которого вводится с клавиатуры;
если таких рейсов нет, вывести соответствующее сообщение.
5. Описать структуру Aeroflot, содержащую следующие поля: название пункта назначения; номер рейса; тип самолета.
Написать программу, выполняющую следующие действия:
упорядочить записи в алфавитном порядке по названиям пунктов назначения;
вывести номера рейсов и пункты назначения, обслуживаемых самолетами, тип которых вводится с клавиатуры;
если таких рейсов нет, вывести соответствующее сообщение.
6. Описать структуру Train, содержащую следующие поля: название пункта назначения; номер поезда; время отправления.
Написать программу, выполняющую следующие действия:
упорядочить записи в алфавитном порядке по названиям пунктов назначения;
вывести информацию о поездах, отправляющихся после введенного с клавиатуры времени;
если таких поездов нет, вывести соответствующее сообщение.
7. Описать структуру Train, содержащую следующие поля: название пункта назначения; номер поезда; время отправления.
Написать программу, выполняющую следующие действия:
упорядочить записи по времени отправления поездов;
вывести информацию о поездах, направляющихся в пункт назначения, введенный с клавиатуры;
если таких поездов нет, вывести соответствующее сообщение.
8. Описать структуру Train, содержащую следующие поля: название пункта назначения; номер поезда; время отправления.
Написать программу, выполняющую следующие действия:
упорядочить записи по номерам поездов;
вывести информацию о поездах, номера которых введены с клавиатуры;
если таких поездов нет, вывести соответствующее сообщение.
9. Описать структуру Worker, содержащую следующие поля: фамилия и инициалы работника; название занимаемой должности; год поступления на работу.
Написать программу, выполняющую следующие действия:
упорядочить записи в алфавитном порядке;
вывести информацию о работниках, чей стаж работы превышает значение, введенное с клавиатуры;
если таких работников нет, вывести соответствующее сообщение.
10. Описать структуру Marsh, содержащую следующие поля: название пункта назначения; название пункта отправления; номер маршрута.
Написать программу, выполняющую следующие действия:
упорядочить записи по номерам маршрутов;
вывести информацию о маршруте, номер которого введен с клавиатуры;
если таких маршрутов нет, вывести соответствующее сообщение.
11. Описать структуру Price, содержащую следующие поля: название товара; название магазина, где он продается; стоимость товара.
Написать программу, выполняющую следующие действия:
упорядочить записи в алфавитном порядке по наименованию товара;
вывести информацию о товаре, название которого введено с клавиатуры;
если таких товаров нет, вывести соответствующее сообщение.
12. Описать структуру Price, содержащую следующие поля: название товара; название магазина, где он продается; стоимость товара.
Написать программу, выполняющую следующие действия:
упорядочить записи в алфавитном порядке по наименованию магазинов;
вывести информацию о товарах, продающихся в магазине, название которого введено с клавиатуры;
если таких магазинов нет, вывести соответствующее сообщение.
13. Описать структуру Order, содержащую следующие поля: расчетный счет плательщика; расчетный счет получателя; перечисляемая сумма.
Написать программу, выполняющую следующие действия:
упорядочить записи в алфавитном порядке по расчетным счетам плательщиков;
вывести информацию о сумме, снятой с расчетного счета плательщика, название которого введено с клавиатуры;
если такого счета нет, вывести соответствующее сообщение.
14. Описать структуру Order, содержащую следующие поля: расчетный счет плательщика; расчетный счет получателя; перечисляемая сумма.
Написать программу, выполняющую следующие действия:
упорядочить записи в порядке возрастания перечисляемых сумм;
вывести информацию о плательщике, с расчетного счета которого снята наибольшая сумма и переведена на расчетный счет получателя, название которого введено с клавиатуры;
если такого счета нет, вывести соответствующее сообщение.
15. Описать структуру Student, содержащую следующие поля: фамилия и инициалы; название группы (буквы и цифры); успеваемость (массив из пяти элементов).
Написать программу, выполняющую следующие действия:
упорядочить записи по возрастанию среднего балла;
вывести фамилии и названия групп для студентов, которые имеют одинаковую фамилию;
вывести наибольшее количество однофамильцев;
если таких студентов нет, вывести соответствующее сообщение.
16. . Описать структуру Student, содержащую следующие поля: фамилия и инициалы; номер группы; успеваемость (массив из пяти элементов).
Написать программу, выполняющую следующие действия:
упорядочить записи по алфавиту;
вывести фамилии и номера групп для студентов, которые имеют оценки 4 и 5;
вывести список студентов заданной группы (номер группы ввести с клавиатуры);
если таких студентов нет, вывести соответствующее сообщение.
17. Описать структуру Auto, содержащую следующие поля: марка; номер; фамилия владельца.
Написать программу, выполняющую следующие действия:
вывести фамилии владельцев и номера автомобилей данной марки (марку ввести с клавиатуры), упорядочив записи по алфавиту;
вывести количество автомобилей каждой марки;
если автомобилей данной марки нет, вывести соответствующее сообщение.
18. Описать структуру Book, содержащую следующие поля: фамилия автора; название и год издания;
Написать программу, выполняющую следующие действия:
вывести названия книг данного автора, упорядочив записи по алфавиту (фамилию автора ввести с клавиатуры);
вывести список книг, которые прослужили более 10 лет;
если таких книг нет, вывести соответствующее сообщение.
19. Описать структуру Cubic, содержащую следующие поля: длина ребра в сантиметрах; цвет; материал, из которого он изготовлен;
Написать программу, выполняющую следующие действия:
вывести данные о кубиках, длина ребра которых больше 5 сантиметров;
вывести данные о кубиках, изготовленных из заданного материала (название материала ввести с клавиатуры);
если таких кубиков нет, вывести соответствующее сообщение.
20. Описать структуру Cubic, содержащую следующие поля: длина ребра в сантиметрах; цвет; материал, из которого он изготовлен;
Написать программу, выполняющую следующие действия:
вывести данные о кубиках, упорядочив по убыванию длины ребра;
вывести данные о кубиках, заданного цвета (цвет ввести с клавиатуры);
если таких кубиков нет, вывести соответствующее сообщение.
Варианты динамических структур:
односвязный список,
двусвязный список,
кольцевой список,
стек,
очередь