Уровень сложности:
Длительность курса: 78 ак.ч.
График обучения: 78 ак. часа: 48 очных часа, 22 часа домашних работ, 4 часа консультации, 4 часа доп. экзамена
Аннотация
Курс является логичным продолжением курса «Структурное программирование на С/C++». Поскольку языки Си и С++ являются синтаксически сложными, то одним из направлений работы на курсе будет повторение изученного материала. Учащиеся закрепят свои знания на более сложных примерах и более глубоко познакомятся с понятиями языка.
Основной целью курса является осваивание процедурных возможностей языков C/C++ и работа со структурированными данными, такими как нуль-терминированные строки, массивы (одномерные и двумерные) и структуры. Помимо этого, в курсе будет немало времени уделено грамотному манипулированию с динамической памятью.
Помимо собственно программирования на языке Си и С++ особое внимание будет уделено проектированию программ и таким понятиям как декомпозиция задачи и разбиение программы на модули. В процессе обучения на базе разработки нескольких игровых приложений учащиеся познакомятся с основными принципами процедурного программирования.
По окончании обучения слушатели выполняют экзаменационную работу (разрабатывают программу на заданную тему) для оценки полученных знаний.
Знания и умения, полученные в результате обучения
В результате обучения учащиеся:
- получат навыки разработки многомодульного консольного приложения в среде Visual C++,
- овладеют множеством инструкций и операторов языков С/С++, в том числе низкоуровневыми возможностями языка (например, побитовыми операциями),
- научатся грамотно использовать встроенные типы данных и создавать пользовательские агрегатные типы данных.
- познакомятся с различными способами выделения памяти и научатся корректно манипулировать памятью, в том числе динамической,
- получат опыт использования возможностей стандартной библиотеки.
Даты занятий | Расписание занятий |
21.09.2019 - 21.12.2019 18:00 - 21:30
Занятия в этой группе уже начались!
Группа:
437.01
Примечание:
сб, 18:00-21:30, ауд. 216
|
|
22.09.2019 - 22.12.2019 10:00 - 13:30
Занятия в этой группе уже начались!
Группа:
437.02
Примечание:
вс, 10:00-13:30, ауд. 218
|
|
17.09.2019 - 24.12.2019 18:15 - 21:45
Занятия в этой группе уже начались!
Группа:
537.01
Примечание:
вт, 18:15-21:45, ауд. 326
|
|
Даты занятий | Расписание занятий |
01.02.2020 - 01.02.2020 18:00 - 21:30
Группа:
103.22.01
Примечание:
сб, 18:00-21:30, ауд.216
|
|
02.02.2020 - 02.02.2020 10:00 - 13:30
Группа:
103.22.02
Примечание:
вс, 10:00-13:30, ауд.218
|
|
28.01.2020 - 28.01.2020 18:15 - 21:45
Группа:
203.22.01
Примечание:
вт, 18:15-21:45, ауд.326
|
Дата | Время | Аудитория | Преподаватель |
28.01.2020 вторник
|
18:15 - 21:45
|
№326 (филиал АИШ-Светлана)
|
Яценко Анна Ивановна
|
|
30.01.2020 - 30.01.2020 18:15 - 21:45
Группа:
203.22.02
Примечание:
чт, 18:15-21:45, ауд.326
|
Дата | Время | Аудитория | Преподаватель |
30.01.2020 четверг
|
18:15 - 21:45
|
№326 (филиал АИШ-Светлана)
|
Яценко Анна Ивановна
|
|
18 900 ₽
Расчёт стоимости с учётом возможных скидок
Расчёт стоимости с учётом возможных скидок представлен как справочная информация.
Фактический размер скидки может несколько отличаться из-за округления значения суммы.
Внимательно ознакомьтесь с условиями действующих
акций и скидкок...
Начальные требования
Для тех, кто еще не учится в АИШ:
- Вступительное тестирование
Для уже обучающихся в АИШ:
- Структурное программирование на С/С++ – промежуточная аттестация не менее 75 баллов или итоговая оценка не ниже «хорошо»
Тематический план
Занятие 1. Повторение (базовые средства языка C++)
- Содержание семестра, организация занятий
- Типы данных в языке С/С++. Литералы. Управляющие последовательности. Перечисления (повторение)
- Переменные и связанные с ними понятия (повторение)
- Операторы: префиксные, постфиксные, операции приведения типа (повторение)
- Инструкции выбора и цикла (повторение)
- Тернарный оператор
- Проверка усвоения материала курса «Структурное программирование на С/С++»
Занятие 2. Функции (повторение). Препроцессор
- Обработка пользовательского ввода
- От исходного кода до исполняемого файла (повторение)
- Декомпозиция задачи
- Разделение программы на модули
- Внешние переменные
- Функции без параметров
- Директивы препроцессора (#define, #include)
- Практическая работа. Разработка проекта с использованием функций без параметров
Занятие 3. Массивы (одномерные и двумерные)
- Одномерные массивы. Массив символов (повторение)
- Нуль-терминированные строки
- Двумерные массивы
- Упражнения на написание программ
- Практическая работа. Разработка проекта с использованием встроенных массивов
Занятие 4. Указатели (повторение). Функции с параметрами
- Указатели (повторение)
- Арифметика указателей
- Функции. Передача параметров по значению (повторение)
- Ссылки
- Функции. Передача параметров по адресу (по указателю, по ссылке)
- Практическая работа (повторение). Разработка программы с использованием основных инструкций (ветвление, цикл)
Занятие 5. Структуры. Массивы и указатели
- Структуры Си. (повторение)
- Встроенный массив в качестве поля структуры
- Передача структуры в функцию (по значению и по адресу)
- Возврат структуры по значению
- Связь массивов и указателей
- Массив указателей. Массив строк
- Практическая работа. Разработка проекта с использованием структур и функций с параметрами
Занятие 6. Разработка многофайлового проекта
- Декомпозиция задачи (повторение)
- Разработка проекта программы
- Практическая работа. Разработка многофайлового проекта с использованием структур и функций с параметрами
Занятие 7. Функции и массивы
- Передача одномерных массивов в функцию
- Использование функций стандартной библиотеки для работы со строками
- Функции и ключевое слово const
- Перегрузка имен функций
- Практическая работа. Разработка многофайлового проекта с использованием структур и функций с параметрами
Занятие 8. Динамическое выделение памяти
- Операторы new, delete (повторение)
- Динамическое выделение памяти под одиночную переменную
- Динамические одномерные массивы
- Передача динамического одномерного массива в функцию
- Использование библиотек сторонних производителей
- Практическая работа. Разработка программы с использованием библиотеки для работы с консолью
Занятие 9. Файловый ввод-вывод
- Понятие потока
- Файловый ввод-вывод с помощью fstream
- Практическая работа. Разработка многофайлового проекта с использованием структур и функций с параметрами и файлового ввода-вывода
Занятие 10. Двумерные массивы и функции.
- Передача двумерного встроенного массива в функцию
- Передача массива строк в функцию
- Динамические двумерные массивы
- Передача динамических двумерных массивов в функцию
- Использование библиотеки управления оконным приложением
- Практическая работа. Разработка консольного проекта, управляющего отображением двумерного динамического массива в окне Windows
Занятие 11. Побитовые операции. Битовые поля
- Побитовые операции
- Использование побитовых операций для «управления устройством»
- Битовые поля
- Практическая работа. Решение задач с использованием побитовых операций
Занятие 12
- Экзамен. Разработка программы с использованием динамических двумерных массивов и функций
- Подведение итогов курса