- •Министерство образования и науки российской федерации
- •Содержание
- •Пояснительная записка
- •Основные правила по технике безопасности Требования по электрической безопасности
- •Особенности электропитания монитора
- •Особенности электропитания системного блока
- •Система гигиенических требований
- •Общие требования к выполнению и оформлению лабораторных работ Допуск студентов к выполнению лабораторных работ
- •Порядок выполнения лабораторных работ
- •Требования к структуре, содержанию и оформлению отчетов по лабораторным работам
- •Порядок защиты лабораторных работ
- •Порядок оценивания лабораторной работы
- •Лабораторная работа №1 Тема: Разработка алгоритмов
- •Теоретические сведения:
- •Ход работы:
- •Задания к работе:
- •Дополнительные задания:
- •Ход работы:
- •Задания к работе:
- •Контрольные вопросы:
- •Лабораторная работа №3 Тема: Создание и обработка двумерных массивов
- •Теоретические сведения:
- •Ход работы:
- •Задания к работе:
- •Контрольные вопросы:
- •Лабораторная работа №4 Тема: Процедуры и их применение
- •Теоретические сведения:
- •Ход работы:
- •Задания к работе:
- •Контрольные вопросы:
- •Лабораторная работа №5 Тема: Обработка текстовых файлов
- •Теоретический материал
- •Ход работы:
- •Задания к работе:
- •Контрольные вопросы:
- •Лабораторная работа №6 Тема: Движение графических объектов
- •Теоретические сведения:
- •Ход работы:
- •Задания к работе:
- •Контрольные вопросы:
- •Лабораторная работа №7
- •Теоретические сведения:
- •Ход работы:
- •Задания к работе:
- •Контрольные вопросы:
- •Лабораторная работа №8 Тема: Реализация операторов условия и выбора
- •Теоретические сведения:
- •Ход работы:
- •Задания к работе:
- •Контрольные вопросы:
- •Лабораторная работа №9 Тема: Организация вложенных циклов
- •Теоретические сведения:
- •Ход работы:
- •Задания к работе:
- •Контрольные вопросы:
- •Лабораторная работа №10 Тема: Создание собственных библиотек функций
- •Теоретические сведения:
- •Ход работы:
- •Задания к работе:
- •Контрольные вопросы:
- •Лабораторная работа №11 Тема: Применение указателей
- •Теоретические сведения:
- •Ход работы:
- •Задания к работе:
- •Контрольные вопросы:
- •Лабораторная работа №12 Тема: Организация движения графических объектов
- •Теоретические сведения:
- •Ход работы:
- •Задания к работе:
- •Контрольные вопросы:
- •Список литературы
- •Основная литература
- •Дополнительная литература
- •Шарафутдинова Светлана Анатольевна основы алгоритмизации и программирования
- •625000, Тюмень, ул. Володарского, 38.
- •625039, Тюмень, ул. Киевская, 52
Контрольные вопросы:
Охарактеризуйте различные параметры функций.
В каких случаях удобнее пользоваться функциями?
Для чего создаются библиотеки функций?
Как вы применили заголовочный файл созданный вами (смотрите первый пункт хода работы)?
Назовите тип функции, которая не возвращает никакого значения.
Напишите пример описания функции с несколькими параметрами.
Рекомендуемая литература: 1.3, 1.4, 1.5, 1.7, 2.1, 2.2.
Лабораторная работа №11 Тема: Применение указателей
Цель: рассмотреть возможности использования указателей при решении задач на обработку массивов и списков.
Вид работы: фронтальный.
Время выполнения: 2 часа.
Теоретические сведения:
Указатели в Си++ используются для связи переменных с машинными адресами. Понятие указателя тесно сплетено с обработкой массивов и строк. Массивы в Си++ могут рассматриваться как специальная форма указателя, связанная с непрерывной областью памяти для хранения индексируемой последовательности значений.
Если v– переменная, то &v– это адрес или место в памяти, где хранится её значение. Оператор определения адреса & (addressoperator) является унарным и имеет такой же приоритет и порядок выполнения справа налево, как и остальные унарные операторы. В программе можно объявить переменные-указатели и затем использовать их для получения адресов в качестве значений.
Объявление
int*p;
говорит, что переменная pбудет иметь тип “указатель на целое”.
Унарные операторы new и delete служат для управления свободной памятью (free store). Свободная память – это предоставляемая системой область памяти для объектов, время жизни которых напрямую управляется программистом. Программист создаёт объект с помощью ключевого слова new, а уничтожает его, используя delete.
Ход работы:
Составьте словесный алгоритм решения каждой задачи.
Оформите в тетрадь листинги программ.
Задания к работе:
Вариант №1
Найти в каждом столбце матрицы S(n, m) максимальный и минимальный элементы и поместить их на место первого и последнего элемента столбца соответственно. Вывести на экран исходную и полученную матрицы в общепринятом виде. Для создания массива используйте указатели.
Вариант №2
Упорядочить по убыванию элементы каждого столбца матрицы A(n, m). Вывести на экран исходную и полученную матрицы в общепринятом виде. Для создания массива используйте указатели.
Вариант №3
Для целочисленной матрицы X(n, m) найти для каждой строки число элементов, кратных пяти, и наибольший из полученных результатов. Для создания массива используйте указатели.
Вариант №4
Из матрицы A(n, m) записать в массив B подряд все положительные элементы, в матрицу C подряд все отрицательные. Для создания массивов используйте указатели.
Вариант №5
Найти в каждой строке матрицы G(n, m) максимальный и минимальный элементы и поместить их на место первого и последнего элемента строки соответственно. Вывести на экран исходную и полученную матрицы в общепринятом виде. Для создания массива используйте указатели.
Вариант №6
Дана матрица Z(n, n), получите транспонированную. Транспонированием квадратной матрицы называется такое ее преобразование, при котором строки и столбцы меняются ролями: i-й столбец становится i-й строкой. Для создания массивов используйте указатели. На экран выведите обе матрицы в общепринятом виде.
Вариант №7
Переписать подряд в массив Y чётные элементы матрицы X(n, m), а в массив Z – нечётные элементы. Для создания массивов используйте указатели. На экран выведите три массива в общепринятом виде.