2024-2025_ИП_09_02_07_2023_ИП-23-3_plx_Основы алгоритмизации и программирования
 
Санкт- Петербургское государственное бюджетное

профессиональное образовательное учреждение

"Политехнический колледж городского хозяйства"

Основы алгоритмизации и программирования
рабочая программа дисциплины
Специальность
09.02.07 Информационные системы и программирование

Правительство Санкт-Петербурга

Комитет по науке и высшей школе

Приложение

к ОП СПО  по специальности

09.02.07 Информационные системы и программирование

, утвержденной приказом от

09.12.2016 г. №1547-ОД

 
часов на контроль
12
самостоятельная работа
0
контактная работа
216
в том числе:
Часов по учебному плану
228
Общая трудоемкость
228 часов
Форма обучения
очная
Квалификация
Программист
Виды контроля  в семестрах:
зачет с оценкой 3 экзамен 4
 
 
Распределение часов  дисциплины по семестрам
Семестр

3

4

Итого
Вид занятий
УП
РП
УП
РП
УП
РП
Лабораторные
64
64
80
80
144
144
Практические
32
32
40
40
72
72
Контактная работа

96
96
120
120
216
216
Сам. работа
Часы на контроль
12
12
12
12
Итого
96
96
132
132
228
228
 
 
Разработчик(и): 
Организация-разработчик:

Санкт-Петербургское государственное бюджетное профессиональное образовательное учреждение «Политехнический колледж городского хозяйства».

 
Преподаватель Лебедева Д.В.
 
 
Рабочая программа дисциплины
Основы алгоритмизации и программирования
разработана в соответствии с ФГОС СПО:

Федеральный государственный образовательный стандарт среднего профессионального образования по специальности 09.02.07 ИНФОРМАЦИОННЫЕ СИСТЕМЫ И ПРОГРАММИРОВАНИЕ (приказ Минобрнауки России от 09.12.2016 г. № 1547)

составлена на основании учебного плана:
по специальности Информационные системы и программирование

 
1. ЦЕЛИ ОСВОЕНИЯ ДИСЦИПЛИНЫ
 
2. МЕСТО ДИСЦИПЛИНЫ В СТРУКТУРЕ ОБРАЗОВАТЕЛЬНОЙ ПРОГРАММЫ
Цикл (раздел) ОП:
ОП
 
Требования к предварительной подготовке обучающегося:
2.1
 
Информатика
2.1.1
 
Дисциплины (модули) и практики, для которых освоение данной дисциплины необходимо как предшествующее:
2.2
 
Разработка программных модулей (КПР 30)
2.2.1
 
3. ПЛАНИРУЕМЫЕ РЕЗУЛЬТАТЫ ОСВОЕНИЯ ДИСЦИПЛИНЫ
 
ОК 01.: Выбирать способы решения задач профессиональной деятельности применительно к различным контекстам
 
 
 
 
 
 
 
 
 
 
 
 
 
ОК 02.: Использовать современные средства поиска, анализа и интерпретации информации и информационные технологии для выполнения задач профессиональной деятельности
 
 
 
 
 
 
 
 
 
 
 
 
 
ОК 04.: Эффективно взаимодействовать и работать в коллективе и команде
 
 
 
 
 
 
 
 
 
 
 
 
 
ОК 05.: Осуществлять устную и письменную коммуникацию на государственном языке Российской Федерации с учетом особенностей социального и культурного контекста
 
 
 
 
 
 
 
 
 
 
 
 
 
ОК 09.: Пользоваться профессиональной документацией на государственном и иностранном языках
 
 
 
 
 
 
 
 
 
 
 
 
 
ПК 1.1.: Формировать алгоритмы разработки программных модулей в соответствии с техническим заданием.
 
 
 
 
 
 
 
 
 
 
 
 
 
ПК 1.2.: Разрабатывать программные модули в соответствии с техническим заданием.
 
 
 
 
 
 
 
 
 
 
 
 
 
ПК 1.3.: Выполнять отладку программных модулей с использованием специализированных программных средств.
 
 
 
 
 
 
 
 
 
 
 
 
 
ПК 1.4.: Выполнять тестирование программных модулей.
 
 
 
 
 
 
 
 
 
 
 
 
 
ПК 1.5.: Осуществлять рефакторинг и оптимизацию программного кода.
 
 
 
 
 
 
 
 
 
 
 
 
 
ПК 2.4.: Осуществлять разработку тестовых наборов и тестовых сценариев для программного обеспечения.
 
 
 
 
 
 
 
 
 
 
 
 
 
ПК 2.5.: Производить инспектирование компонент программного обеспечения на предмет соответствия стандартам кодирования.
 
 
 
 
 
 
 
 
 
 
 
 
 
В результате освоения дисциплины обучающийся должен:
 
 
3.1
Знать:
3.1.1
Понятие алгоритмизации, свойства алгоритмов, общие принципы построения алгоритмов, основные алгоритмические конструкции.
3.1.2
Эволюцию языков программирования, их классификацию, понятие системы программирования.
3.1.3
Основные элементы языка, структуру программы, операторы и операции, управляющие структуры, структуры данных, файлы, классы памяти.
3.1.4
Подпрограммы, составление библиотек подпрограмм
3.1.5
Объектно-ориентированную модель программирования, основные принципы объектно-ориентированного программирования на примере алгоритмического языка: понятие классов и объектов, их свойств и методов, инкапсуляция и полиморфизма, наследования и переопределения
 
 
3.2
Уметь:
3.2.1
Разрабатывать алгоритмы для конкретных задач.
3.2.2
Использовать программы для графического отображения алгоритмов.
3.2.3
Определять сложность работы алгоритмов.
3.2.4
Работать в среде программирования.
3.2.5
Реализовывать построенные алгоритмы в виде программ на конкретном языке программирования.
 
3.2.6
Оформлять код программы в соответствии со стандартом кодирования.
3.2.7
Выполнять проверку, отладку кода программы.
 
4. ТЕМАТИЧЕСКОЕ ПЛАНИРОВАНИЕ ДИСЦИПЛИНЫ
 
Код занятия
Наименование разделов и тем /вид занятия/
Семестр / Курс
Часов
Примечание
 
Раздел 1. Элементы языка С++
 
1. 1
Структура программы. Ввод и вывод данных/Пр/
3
2
 
1. 2
Типы данных. Арифметические операции, выражения./Пр/
3
2
 
1. 3
Встроенные математические функции. /Пр/
3
2
 
1. 4
№1. Программы линейной структуры/Лаб/
3
4
 
1. 5
№2. Арифметические операции. Операции инкремента и декремента/Лаб/
3
4
 
1. 6
№3. Решение задач с использованием встроенных математических функций/Лаб/
3
4
 
Раздел 2. Операторы управления
 
2. 1
Логические операции. Условный оператор /Пр/
3
2
 
2. 2
Оператор выбора/Пр/
3
2
 
2. 3
Операторы цикла/Пр/
3
2
 
2. 4
Вложенные циклы. Оператор break и continue/Пр/
3
2
 
2. 5
№4. Разветвляющие алгоритмы++/Лаб/
3
6
 
2. 6
№5. Оператор выбора switch/Лаб/
3
4
 
2. 7
№6. Оператор цикла for/Лаб/
3
4
 
2. 8
№7. Оператор цикла while/Лаб/
3
4
 
2. 9
№8. Оператор цикла do while/Лаб/
3
4
 
2. 10
№9. Вложенные циклы/Лаб/
3
2
 
Раздел 3. Функции
 
3. 1
Описание функции, вызов, параметры/Пр/
3
2
 
3. 2
Механизмы передачи параметров. Видимость переменных/Пр/
3
2
 
3. 3
Рекурсивные функции. Перегрузка функций/Пр/
3
2
 
3. 4
№10. Создание и использование функций/Лаб/
3
6
 
3. 5
№11. Разделение программы на файлы/Лаб/
3
2
 
3. 6
№12. Рекурсивные функции/Лаб/
3
2
 
Раздел 4. Одномерные массивы
 
4. 1
Одномерные массивы, работа с элементами./Пр/
3
2
 
4. 2
Алгоритмы сортировки элементов массива/Пр/
3
2
 
4. 3
Одномерные массивы и функции/Пр/
3
2
 
4. 4
№13. Обработка одномерных массивов/Лаб/
3
6
 
4. 5
№14.  Сортировка одномерных массивов/Лаб/
3
2
 
Раздел 5. Матрицы
 
5. 1
Двумерные массивы, работа с матрицами/Пр/
3
2
 
5. 2
Двумерные массивы и функции/Пр/
3
2
 
5. 3
№15. Обработка двумерных массивов/Лаб/
3
6
 
5. 4
№16. Сортировка элементов двумерного массива/Лаб/
3
4
 
5. 5
Дифференцированный зачет/Пр/
3
2
 
Раздел 6. Файлы
 
6. 1
Работа с текстовыми файлами. Чтение и запись в файл/Пр/
4
2
 
6. 2
№17. Чтение и запись в файл стандартных типов данных/Лаб/
4
6
 
Раздел 7. Указатели и массивы
 
7. 1
Указатели. Операции над указателями /Пр/
4
2
 
7. 2
Динамические массивы/Пр/
4
2
 
7. 3
№18. Динамические одномерные массивы/Лаб/
4
4
 
7. 4
№19. Динамические двумерные массивы/Лаб/
4
4
 
Раздел 8. Строки
 
8. 1
Класс String/Пр/
4
2
 
8. 2
Обзор функций - членов класса string/Пр/
4
2
 
8. 3
№20. Работа со строками/Лаб/
4
6
 
Раздел 9. Структуры
 
9. 1
Структуры. Массивы структур./Пр/
4
2
 
9. 2
Структуры и функции/Пр/
4
2
 
9. 3
№21.Решение задач с использованием структур/Лаб/
4
6
 
Раздел 10. Введение в объектно-ориентированное программирование
 
10. 1
Классы ООП: виды, назначение, свойства, методы, события./Пр/
4
2
 
10. 2
Основные принципы ООП: инкапсуляция, наследование, полиморфизм./Пр/
4
2
 
10. 3
Управление доступом. Конструкторы и деструкторы класса /Пр/
4
2
 
10. 4
Наследование классов/Пр/
4
2
 
10. 5
№22. Paзpa6oтка конструкторов и деструкторов/Лаб/
4
4
 
10. 6
№23. Использование классов/Лаб/
4
4
 
10. 7
№24. Создание наследованного класса/Лаб/
4
4
 
Раздел 11. Контейнеры
 
11. 1
Обзор библиотеки STL. Контейнеры/Пр/
4
2
 
11. 2
Контейнер вектор/Пр/
4
2
 
11. 3
Контейнерный класс стек/Пр/
4
2
 
11. 4
Контейнерный класс очередь/Пр/
4
2
 
11. 5
Контейнерный класс list/Пр/
4
2
 
11. 6
№25. Использование класса вектор/Лаб/
4
6
 
11. 7
№26. Использование класса стек, очередь/Лаб/
4
4
 
11. 8
№27. Использование класса список/Лаб/
4
4
 
Раздел 12. Визуальное событийно-управляемое программирование
 
12. 1
Интерфейс среды разработчика. Основные компоненты  среды, их назначение/Пр/
4
2
 
12. 2
Свойства компонентов. Виды свойств/Пр/
4
2
 
12. 3
Создание многооконного приложения/Пр/
4
2
 
12. 4
События компонентов/Пр/
4
2
 
12. 5
№28. Знакомство со средой разработки. Создание простого оконного приложения /Лаб/
4
2
 
12. 6
№29. Использование компонентов для работы с текстом/Лаб/
4
4
 
12. 7
№30. Использование переключателей/Лаб/
4
4
 
12. 8
№31. Использование выпадающего списка/Лаб/
4
4
 
12. 9
№32. Использование кнопок и списков/Лаб/
4
4
 
12. 10
№33. Создание проекта с использованием меню/Лаб/
4
2
 
12. 11
№34. Работа с несколькими окнами/Лаб/
4
4
 
12. 12
№35. Разработка программы построения геометрических примитивов /Лаб/
4
4
 
5. ЛИТЕРАТУРА
1. Немцова Т.И. Программирование на языке высокого уровня. Программирование на языке С++: Учебное пособие - М.: ИД ФОРУМ: ИНФРА-М, 2023 2. Страуструп Бьярне. Язык программирования C++. Краткий курс. Издательство: Вильямс, 2019
 
5.1. Перечень ресурсов информационно-телекоммуникационной сети "Интернет"
 
1
 
5.2. Перечень программного обеспечения
 
5.3. Перечень информационных справочных систем
 
 
6. МАТЕРИАЛЬНО-ТЕХНИЧЕСКОЕ ОБЕСПЕЧЕНИЕ ДИСЦИПЛИНЫ
 
7. МЕТОДИЧЕСКИЕ УКАЗАНИЯ ДЛЯ ОБУЧАЮЩИХСЯ ПО  ДИСЦИПЛИНЕ