ТОР 5 статей: Методические подходы к анализу финансового состояния предприятия Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века Характеристика шлифовальных кругов и ее маркировка Служебные части речи. Предлог. Союз. Частицы КАТЕГОРИИ:
|
Выражения и операцииОСНОВЫ ПРОГРАММИРОВАНИЯ
Методические указания к выполнению лабораторных и практических работ для студентов направления 09.03.04– «Программная инженерия» и 10.05.03 – «Информационная безопасность автоматизированных систем»
(Часть 1)
Курган 2015
Кафедра: «Программное обеспечение автоматизированных систем»
Дисциплина: «Программная инженерия» (направление 09.03.04). «Информационная безопасность автоматизированных систем» (направление 10.05.03)
Составил: канд. техн. наук, доцент А.М. Семахин.
Утверждены на заседании кафедры «30» сентября 2015 г.
Рекомендованы методическим советом университета
«»2015 г.
СОДЕРЖАНИЕ
СОДЕРЖАНИЕ 3 ВВЕДЕНИЕ 5 1 Базовые конструкции языка С++ 5 1.1 Тип данных 5 1.2 Выражения и операции 6 1.3 Операторы 8 2 Пользовательский тип данных. Массивы и структуры 9 2.1 Массивы 9 2.2 Структуры 9 3 Структурное программирование. Функции 9 3.1 Механизм передачи параметров в функцию 10 3.2 Виды функций 10 4 Объектно-ориентированное программирование 11 4.1 Класс. Конструкторы и деструкторы 11 4.2 Статические элементы класса 12 4.3 Дружественные функции и классы 12 4.4 Одиночное и множественное наследование 13 4.5 Чистые виртуальные функции и абстрактные классы 14 4.6 Перегрузка операторов. Операторные функции 14 5 Задания для выполнения лабораторных работ 15 5.1 Базовые понятия и языковые конструкции С++ 15 5.1.1 Задания для выполнения лабораторной работы №1. «Базовый тип данных. Линейный процесс. Расчет по формуле» 15 5.1.2 Задания для выполнения лабораторной работы №2. «Базовый тип данных. Математические функции» 16 5.1.3 Задания для выполнения лабораторной работы №3. «Базовый тип данных. Разветвляющийся процесс. Табулирование функции» 17 5.1.4 Задания для выполнения лабораторной работы №4. «Пользовательский тип данных. Одномерные массивы» 20 5.1.5 Задания для выполнения лабораторной работы №5. «Пользовательский тип данных. Двумерные массивы. Обработка матриц» 22 5.1.6 Задания для выполнения лабораторной работы №6. «Пользовательский тип данных. Структуры» 24 5.1.7 Задания для выполнения лабораторной работы №7. «Операторы языка С++» 26 5.2 Структурное программирование. Функции 29 5.2.1 Задания для выполнения лабораторной работы №8. «Функции» 29 5.2.2 Задания для выполнения лабораторной работы №9. «Перегруженные функции» 30 5.2.3 Задания для выполнения лабораторной работы №10. «Шаблонные функции» 31 5.3 Объектно-ориентированное программирование. Основные понятия. Инкапсуляция 33 5.3.1 Задания для выполнения лабораторной работы №11. «Классы. Конструкторы и деструкторы» 33 5.3.2 Задания для выполнения лабораторной работы №12. «Перегрузка операций» 35 5.4 Объектно-ориентированное программирование. Наследование и полиморфизм 36 5.4.1 Задания для выполнения лабораторной работы №13. «Одиночное и множественное наследование» 36 5.4.2 Задания для выполнения лабораторной работы №14. «Полиморфизм и виртуальные функции» 38 6 Задания для выполнения практических работ 38 6.1 Задания для выполнения практической работы №1. «Базовый тип данных. Линейный процесс. Расчет по формуле» 40 6.2 Задания для выполнения практической работы №2. «Базовый тип данных. Процесс ветвления. Вычисление значения функции, заданной графически» 41 6.3 Задания для выполнения практической работы №3. «Базовый тип данных. Процессы ветвления и циклический. Попадание точки в фигуру» 44 6.4 Задания для выполнения практической работы №4. «Пользовательский тип данных. Одномерные массивы» 46 6.5 Задания для выполнения практической работы №5. «Пользовательский тип данных. Двумерные массивы. Обработка матриц» 48 6.6 Задания для выполнения практической работы №6. «Пользовательский тип данных. Структуры» 50 6.7 Задания для выполнения практической работы №7. «Структурное программирование. Шаблонные функции» 52 6.8 Задания для выполнения практической работы №8. «Инкапсуляция. Класс. Конструкторы и деструкторы» 54 6.9 Задания для выполнения практической работы №9. «Одиночное наследование» 55 6.10 Задания для выполнения практической работы №10. «Множественное наследование. Виртуальные базовые классы» 56 6.11 Задания для выполнения практической работы №11. «Виртуальные функции и полиморфизм» 58 6.12 Задания для выполнения практической работы №12. «Перегрузка операторов» 60 ЗАКЛЮЧЕНИЕ 62 СПИСОК ЛИТЕРАТУРЫ 63 ВВЕДЕНИЕ
Объектно-ориентированный язык программирования С++ является самым распространенным языком программирования в формализации решения задач на ЭВМ. Операционные системы Windows и Linux написаны на языке С++. Преимуществом языка С++ являются гибкость, переносимость и универсальность. Язык С++ используется для решения задач любой степени сложности. Язык С++ создан Бьерном Страуструп (Bjarne Stoustrup) в 1979 году в компании Bell Laboratories (г. Муррей Хилл, штат Нью Джерси). Вначале язык назывался «С с классами» (C with classes). В 1983 году получил название С++. В 1989 г. Язык С++ прошел стандартизацию ANSI (American National Standards Institute, Национальный институт стандартизации США). Результатом стало существование двух версий С++: традиционная версия С++ и стандартная (Standard C++). Традиционная версия базируется на исходной разработке Бьярна Страуструпа. Версия Standard C++ создана Бьярном Страуструпом совместно с комитетом по стандартизации ANSI/ISO (ISO – International Standards Organization, Международная организация по стандартам). Для изучения основ программирования в качестве базового языка выбран алгоритмический язык С++. Методические указания содержат теоретический материал, лабораторные и практические работы по основным разделам дисциплины «Основы программирования».
1 Базовые конструкции языка С++
Тип данных
Тип данных (data type) – множество допустимых значений данных с набором операций, которые применимы к этим данным. Тип данных определяет внутреннее представление данных в памяти компьютера, множество значений, которые могут принимать величины этого типа, операции и функции, которые можно применять к величинам этого типа. Подразделяются на два вида: основные (fundamental) и производные (derived). Основные типы данных – целый (int), символьный (char), расширенный символьный (wchar_t), логический (bool), вещественный (float), вещественный с двойной точностью (double). Существуют четыре спецификатора, уточняющие внутреннее представление и диапазон значений стандартных тип: короткий (short), длинный (long), знаковый (signed), беззнаковый (unsigned). Производный тип данных – массивы (arrays), функции (functions), указатели (pointers), ссылки (reference), классы (classes), структуры (structures), объединения (unions), указатели на члены классов (pointers to classmembers). В таблице 1.1 приведены диапазоны значений и размер в байтах стандартных типов данных.
Таблица 1.1 – Диапазоны значений и размер стандартных типов данных
Имя переменной служит для обращения к области памяти, в которой хранится значение. Общий вид объявления переменной [класс памяти] [const] тип имя [инициализатор]; 1. Необязательный параметр класс памяти принимает значения auto, extern, static, register. 2. Модификатор const показывает, что значение переменной изменять нельзя. 3. Инициализация – присвоение переменной начального значения. Две формы инициализации: =значение или (значение). Область действия – часть программы, в которой его можно использовать для доступа к связанной с ним области памяти. Время жизни – существование переменной в течение выполнения программы или блока. Область видимости идентификатора – часть текста программы, из которой допустим доступ к связанной с идентификатором областью памяти. Тип void (пустой)применяется для определения функций, которые не возвращают значения.
Выражения и операции
Выражение (expression) – конструкция языка (формула) для вычисления значения в соответствии со значениями операндов. Операнд (operand) – часть команды, определяющая аргумент, над которым выполняется операция. Приоритет операций (operation precedence) – очередность выполнения операций в выражении. Операция (operation) –действие, выполняемое над операндами. Арифметические операции приведены в таблице 1.2
Таблица 1.2 – Арифметические операции
Операции отношения приведены в таблице 1.3.
Таблица 1.3 – Операции отношения
Логические операции производят действия над выражениями, обладающими двумя значениями –истина или ложь. Перечень логических операций приведен в таблице 1.4. К побитовым операциям относятся операции И(&), ИЛИ|(||), исключающее ИЛИ (^), отрицание(~), сдвиг влево (<<), сдвиг вправо(>>). В побитовых операциях действия происходят над двоичным представлением целых чисел.
Таблица 1.4 – Логические операции
Операторы
Язык С++ включает набор управляющих инструкций, позволяющий управлять порядком выполнения программы. Под управляющими инструкциями подразумеваются операторные конструкции. Оператор (statement) – установленное синтаксисом языка действие в программе. В языке С++ выражение, которое заканчивается символом точки с запятой, является оператором. Операторы языка С++ имеют строгие правила написания. Если правила будут нарушены, компилятор сообщит об ошибке. Существуют несколько групп операторов. Не нашли, что искали? Воспользуйтесь поиском:
|