- •А.Ю. Быков
- •Быков Александр Юрьевич
- •Подхода
- •Оглавление
- •Введение
- •1. Лабораторная работа № 1. Изучение диалоговых окон и элементов управления в Win api
- •1.1. Цель и задачи работы, требования к результатам ее выполнения
- •1.2. Краткая характеристика объекта изучения
- •1.2.1. Классификация диалоговых окон
- •1.2.2. Окна сообщений
- •1.2.3. Создание модального диалогового окна
- •1.2.4. Элементы управления диалогового окна
- •Кнопка, контрольный переключатель, радио кнопка
- •Текстовое поле
- •Примеры
- •Примеры посылки сообщений списку
- •1.3. Задачи и порядок выполнения работы
- •Пример выполнения работы
- •1.4. Форма отчета по лабораторной работе
- •1.5. Вопросы для самоконтроля
- •2.1. Цель и задачи работы, требования к результатам ее выполнения
- •2.2. Краткая характеристика объекта изучения
- •2.2.1. Понятие класса и объекта
- •2.2.2. Доступность компонент класса
- •2.2.3. Основные элементы класса Компонентные данные и функции класса
- •Конструктор класса
- •Деструктор класса
- •2.3. Задачи и порядок выполнения работы
- •Пример выполнения работы
- •2.4. Форма отчета по лабораторной работе
- •2.5. Вопросы для самоконтроля
- •3.1. Цель и задачи работы, требования к результатам ее выполнения
- •3.2. Краткая характеристика объекта изучения
- •3.3. Задачи и порядок выполнения работы
- •Пример выполнения работы
- •3.4. Форма отчета по лабораторной работе
- •4.2.3. Особенности конструкторов при наследовании
- •4.2.4. Особенности деструкторов при наследовании
- •4.2.5. Переопределение функций. Виртуальные функции
- •4.3. Задачи и порядок выполнения работы
- •Пример выполнения работы
- •4.4. Форма отчета по лабораторной работе
- •5.3. Задачи и порядок выполнения работы
- •Пример выполнения работы
- •5.4. Форма отчета по лабораторной работе
- •6.2.2. Создание потока с помощью api – функций
- •6.2.3. Синхронизация потоков
- •1. Взаимное исключение.
- •3. Семафор
- •4. Событие
- •6.2.4. Синхронизация процессов
- •6.3. Задачи и порядок выполнения работы
- •Пример выполнения работы
- •6.4. Форма отчета по лабораторной работе
- •6.5. Вопросы для самоконтроля
- •7. Лабораторная работа № 7. Изучение библиотеки классов mfc
- •7.1. Цель и задачи работы, требования к результатам ее выполнения
- •7.2. Краткая характеристика объекта изучения
- •7.2.1. Обзор упрощенной иерархии классов библиотеки mfc
- •7.2.2. Состав простейшего приложения в mfc
- •7.2.3. Обработка сообщений в mfc
- •Некоторые функции обработчики
- •7.2.4. Вывод графики в mfc
- •Графические объекты
- •Добавление обработчиков сообщений и событий в однодокументном приложении
- •Вывод графики и перерисовка
- •7.3. Задачи и порядок выполнения работы
- •Пример выполнения работы
- •7.4. Форма отчета по лабораторной работе
- •7.5. Вопросы для самоконтроля
- •8. Лабораторная работа № 8. Изучение разработки приложений для платформы Microsoft .Net с использование библиотеки классов .Net Framework
- •8.1. Цель и задачи работы, требования к результатам ее выполнения
- •8.2. Краткая характеристика объекта изучения
- •8.2.1. Обзор платформы Microsoft .Net
- •8.2.2. Единая среда исполнения
- •8.2.4. Понятие управляемого кода
- •8.2.6. Система общих типов
- •8.2.7. Обзор библиотеки классов .Net Framework
- •8.2.8. Класс Form
- •8.2.9. Обработка событий
- •8.2.10. Основные элементы управления
- •8.4. Форма отчета по лабораторной работе
- •8.5. Вопросы для самоконтроля
- •Заключение
- •Рекомендуемые источники
- •Приложение а. Варианты заданий для выполнения лабораторных работ Варианты заданий для лабораторной работы № 1
- •Варианты заданий для лабораторной работы № 2
- •Варианты заданий для лабораторной работы № 3
- •Варианты заданий для лабораторной работы № 4
- •Варианты заданий для лабораторной работы № 5
- •Варианты заданий для лабораторной работы № 6
- •Часть I
- •Часть II
- •Варианты заданий для лабораторной работы № 7
- •Варианты заданий для лабораторной работы № 8
8.4. Форма отчета по лабораторной работе
Отчет должен содержать: титульный лист, цель работы, условие задачи, исходные тексты программ с комментариями, скриншот окна с данными, выводы по работе.
8.5. Вопросы для самоконтроля
1. Особенности CRL.
2. Система общих типов.
3. Обработка событий в NET Framework.
4. Примеры классов элементов управления.
Заключение
В методических указаниях рассмотрены содержание и особенности выполнения лабораторных работ по дисциплине «Алгоритмические языки». Работы выполняются в течение второго семестра со студентами, обучающимися на кафедре ИУ8, и в течение четвертого семестра со студентами факультета ГУИМЦ, обучающимися по специальностям кафедры ИУ8.
По каждой лабораторной работе приведены: цель и задачи работы, требования к результатам ее выполнения, краткая характеристика объекта изучения, задачи и порядок выполнения, форма отчета. Также для подготовки студентов представлены вопросы для самоконтроля, в приложении заданы варианты заданий.
Выполнение предложенных работ позволит студенту получить знания, навыки и умения по основным объектно-ориентированным возможностям языка Си++, библиотекам классов MFC и .NET FrameWork и подготовится к изучению таких объектно-ориентированных языков программирования как Си# и Java на последующих этапах обучения.
Рекомендуемые источники
Страуструп Б. Язык программирования С++. – М.: Бином, 2011. – 1136 с.
Распространение программного обеспечения по подписке DreamSpark Premium (MSDNAA). [Электронный ресурс] // URL: http://msdnaa.lib.bmstu.ru/default.aspx (дата обращения: 30.06.2015).
Подбельский В.В. Язык Си++: Учебное пособие. – М.: Финансы и статистика, 2009. – 560 с.
Румянцев П.В. Азбука программирования в Win 32 API. – М.: Горячая Линия - Телеком, 2004. – 312 с.
Энтони Уильямс. Параллельное программирование на С++ в действии. Практика разработки многопоточных программ. – М.: ДМК Пресс, 2012. – 672 с.
Давыдов В.Г. Visual C++. Разработка Windows-приложений с помощью MFC и API-функций. – СПб.: БХВ- Петербург, 2008. – 576 с.
Зиборов В.В. MS Visual C++ 2010 в среде .NET. Библиотека программиста. – СПб.: Питер, 2012. – 320 с.
Приложение а. Варианты заданий для выполнения лабораторных работ Варианты заданий для лабораторной работы № 1
Разработать приложение на базе диалогового окна – калькулятор. Калькулятор может иметь примерный вид, представленный на рисунке 1 (или другой с требуемыми функциями). При нажатии соответствующей кнопки результат помещается в текстовое поле, и проведенная операция добавляется в список проведенных операций. Предусмотреть кнопку для очистки списка.
Вариант № 1
Разработать калькулятор для вычисления операции объединения 2-х множеств. Множество является множеством целых чисел, которые вводятся в текстовое поле через пробелы.
Вариант № 2
Разработать калькулятор для вычисления операции пересечения 2-х множеств. Множество является множеством целых чисел, которые вводятся в текстовое поле через пробелы.
Вариант № 3
Разработать калькулятор для вычисления операции разности 2-х множеств. Множество является множеством целых чисел, которые вводятся в текстовое поле через пробелы.
Вариант № 4
Разработать калькулятор для вычисления операции симметричной разности 2-х множеств. Множество является множеством целых чисел, которые вводятся в текстовое поле через пробелы.
Вариант № 5
Разработать калькулятор для вычисления 2-х арифметических операций (+, -).
Вариант № 6
Разработать калькулятор для получения целой части вещественного числа и округления вещественного числа до ближайшего целого.
Вариант № 7
Разработать калькулятор для вычисления остатка от деления и целочисленного деления целых чисел.
Вариант № 8
Разработать калькулятор для длины вектора на плоскости, заданного координатами x, y. Начало вектора находится в точке с координатами (0, 0).
Вариант № 9
Разработать калькулятор для перевода целых чисел, вводимых в десятичной системе счисления, в шестнадцатеричную систему счисления.
Вариант № 10
Разработать калькулятор для перевода целых чисел, вводимых в десятичной системе счисления, в восьмеричную систему счисления.
Вариант № 11
Разработать калькулятор для перевода целых чисел, вводимых в десятичной системе счисления, в двоичную систему счисления.
Вариант № 12
Разработать калькулятор для вычисления площади треугольника. Треугольник задается длинами трех сторон (использовать формулу Герона).
Вариант № 13
Разработать калькулятор для вычисления площади параллелограмма. Параллелограмм задается длинами 2-х сторон и углом между ними в градусах.
Вариант № 14
Разработать калькулятор для вычисления площади эллипса. Эллипс задается длинами большой и малой полуосей.
Вариант № 15
Разработать калькулятор для вычисления площади треугольника. Треугольник задается длинами двух сторон и углом между ними в градусах.
Вариант № 16
Разработать калькулятор для вычисления 2-х арифметических операций (*, /).
Вариант № 17
Разработать калькулятор для вычисления тригонометрических функций sin, cos (угол задается в градусах).
Вариант № 18
Разработать калькулятор для вычисления тригонометрических функций tn, ctn (угол задается в градусах).
Вариант № 19
Разработать калькулятор для вычисления квадратного корня и возведения аргумента в любую степень.
Вариант № 20
Разработать калькулятор для вычисления функций десятичный и натуральный логарифмы.
Вариант № 21
Разработать калькулятор для вычисления функций экспонента и 2x.
Вариант № 22
Разработать калькулятор для вычисления операций сложения и вычитания 2-х комплексных чисел (комплексные числа задаются действительной и мнимой частями).
Вариант № 23
Разработать калькулятор для вычисления тригонометрических функций arcsin, arccos (угол выдается в градусах).
Вариант № 24
Разработать калькулятор для вычисления тригонометрических функций arctn, arcctn (угол выдается в градусах).
Вариант № 25
Разработать калькулятор для вычисления логарифма по любому допустимому основанию.
Вариант № 26
Разработать калькулятор для вычисления поразрядных операций «И» и «ИЛИ» над целыми числами.
Вариант № 27
Разработать калькулятор для вычисления поразрядных операций «НЕ» и «исключающее ИЛИ» над целыми числами.
