Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методы программирования / БИ / Бакалавр / Раб_прог(Технологии_и_методы_программирования_2011бакалавр).doc
Скачиваний:
11
Добавлен:
26.04.2015
Размер:
209.41 Кб
Скачать

4.2 Содержание дисциплины

Разделы дисциплины и виды занятий

Таблица 2

Разделы и темы дисциплины

Трудоемкость, час.

Формируемые компетенции

(ОК, ПК)

Лекции

ПЗ

ЛР

СРС

3 семестр

Раздел 1. Структуры данных

Тема 1.1. Типизация данных в языках программирования.

1

2

ПК-15

Тема 1.2. Организация данных, агрегирование, структурирование.

2

2

ПК-16

Тема 1.3. Контейнеризация данных, файлы, методы доступа.

3

2

ПК-16, ПК-17

Раздел 2. Программная реализация алгоритмов.

Тема 2.1. Базовые операторы языков программирования

1

2

ПК-16

Тема 2.2. Функции, библиотеки функций

2

4

ПК-16

Тема 2.3. Структурные и объектные принципы программной реализации

2

4

ПК-15

Тема 2.4. Наследование, инкапсуляция, косвенное обращение и полиморфизм в классах

1

4

ПК-15, ПК-16

Раздел 3. Типовые алгоритмы и методы программирования

Тема 3.1. Модели вычислений и оценки сложности алгоритмов

2

4

ПК-16

Тема 3.2. Основные понятия, стратегии и алгоритмы сортировки

2

4

ПК-16, ПК-17

Тема 3.3. . Алгоритмы

поиска

1

4

ПК-16, ПК-17

Тема 3.3. . Алгоритмы

на графах

1

4

ПК-16, ПК-17

ИТОГО:

18

36

4.3 СОДЕРЖАНИЕ РАЗДЕЛОВ ДИСЦИПЛИНЫ

Раздел 1. Структуры данных.

    1. Цели и задачи курса. Место дисциплины в учебном процессе. Методические рекомендации по изучению курса. Обзор литературы.

    2. Элементарные и простые структуры данных. Сложные структуры данных.

    3. Указатели и ссылки.

    4. Статические и динамические структуры.

    5. Файловые структуры.

    6. Контейнерные классы библиотеки std языка C++..

Раздел 2. Программная реализация алгоритмов.

2.1. Базовые операторы языков программирования.

2.2. Функции.

2.3. Структурные и объектные принципы программной реализации.

2.4. Косвенное обращение и полиморфизм в классах.

2.5 Реализация и интерфейсы.

2.6.Причины возникновения и обработка исключительных ситуаций.

Раздел 3. Алгоритмы сортировки.

3.1. Понятие модели вычислений и оценки сложности алгоритмов.

3.2. Основные понятия и стратегии сортировки. Алгоритмы сортировки вставками, выбором, слиянием, обменная сортировка, распределяющая сортировка. Оценка сложности работы алгоритмов внутренней сортировки.

3.3. Основные понятия внешней сортировки. Алгоритмы многофазного и каскадного слияния.

3.4. Основные понятия. Алгоритмы исчерпывающего поиска.

3.5.Поиск в последовательно организованном файле.

3.6.Поиск в деревьях. Оптимальные деревья двоичного поиска. Сбалансированные деревья.

3.7. Хеширование. Разрешение коллизий.

3.8. Возможные представления графов в ЭВМ.

3.9.Алгоритмы нахождение остовного дерева минимального веса, определения кратчайших расстояний между вершинами графа.

3.10. Итоги изучения курса. Методические рекомендации по применению полученных знаний, умений и навыков при изучении последующих курсов.

4.4 АУДИТОРНАЯ РАБОТА

4.4.2. Лабораторный практикум

№ п/п

№ раздела дисциплины

Наименование лабораторных работ

1

1

Знакомство с используемой средой программирования

2

1

Объявление и инициализация переменных стандартных типов. Внутреннее представление и доменные области. Преобразования типов.

3

1

Статические массивы, структуры, объединения, перечисления. Определение длины данных. Преобразования типов и арифметика указателей.

4

2

Вычисление арифметических и логических выражений. Циклы. Условные операторы.

5

2

Функции. Определение и описание. Рекурсивный вызов функций. Указатели на функции.

6

2

Псевдослучайные числа, функции моделирующие законы распределения

7

2

Обработка файловых структур данных Форматированный текстовый ввод/вывод. Ввод/вывод для двоичных файлов и использование стандартных функций времени на примере реализации регистрации событий.

8

2

Проектирование иерархий классов. Создание объектов с использованием конструкторов разных семантических типов. Конструкторы при наследовании.

9

2

Реализация методов классов с использованием механизма перегрузки операций.

10

2

Массив указателей типа абстрактного класса и полиморфное поведение объектов классов потомков.

11

2

Определение, генерация и обработка исключений.

12

2

Реализация шаблонного контейнерного класса.

13

3

Реализация алгоритма сортировки на примере массивов.

14

3

Реализация алгоритма сортировки на примере списков и ассоциативных массивов.

15

3

Поиск в файле, отсортированном по ключу поиска и с использованием таблицы индексов.

16

3

Балансировка двоичного дерева

17

3

Поиск пути на графе с весами

18

3

Поиск пути в полигональной области

4.4.3. Иные виды аудиторных занятий

Не предусмотрено рабочим учебным планом.

4.5. САМОСТОЯТЕЛЬНАЯ РАБОТА

4.5.1. Курсовой проект (работа)

Не предусмотрено рабочим учебным планом.

4.5.2. Расчетно-графические, контрольные работы и рефераты

Не предусмотрено рабочим учебным планом.

4.5.3. Иные виды самостоятельной работы

Оформление и защита лабораторных работ.

5. ОБРАЗОВАТЕЛЬНЫЕ ТЕХНОЛОГИИ

Таблица 7

Формы

Методы

Лекции (час)

Практические/

семинарские занятия (час)

Всего

Тест

2

2

Работа в группах;

2

2

Выступление в роли обучающего

2

2

Разработка проекта

6

6

Мультимедийный курс

8

8

Итого интерактивных занятий

8

12

20

6. УЧЕБНО-МЕТОДИЧЕСКОЕ ОБЕСПЕЧЕНИЕ УЧЕБНОЙ ДИСЦИПЛИНЫ

6.1 Рекомендуемая литература

6.1.1 Основная

  1. Прата С «Язык программирования С++. Лекции и упражнения», М, Вильямс, 2008

6.1.2 Дополнительная

  1. Кнут Д. «Искусство программирования: классический труд: в 3 т. », М.: Вильямс, 2008. Т.1. Основные алгоритмы. 720 с. ОНЛ (3)

  2. Кнут Д. «Искусство программирования: классический труд: в 3 т. », М.: Вильямс, 2008. Т.3. Сортировка и поиск. 824 с. ОНЛ (3)

  3. В.В. Подбельский «Язык C++», М, Статистика, 2006.

7 МАТЕРИАЛЬНО-ТЕХНИЧЕСКОЕ ОБЕСПЕЧЕНИЕ ДИСЦИПЛИНЫ (МОДУЛЯ)

Компьютерный класс, оборудованный ПЭВМ следующей минимальной конфигурации: процессор Celeron 1.7ГГц, ОЗУ 512Мб, свободное дисковое пространство 10Гб, SVGA–монитор с разрешением 1024х768, мышь.

Программное обеспечение: Windows XP Professional (или выше), интегрированная среда создания приложений на языке C++.

8 МЕТОДИЧЕСКИЕ РЕКОМЕНДАЦИИ ПО ОРГАНИЗАЦИИ ИЗУЧЕНИЯ ДИСЦИПЛИНЫ (МОДУЛЯ)

Теоретическое изучение предмета происходит на лекционных занятиях и при самостоятельной работе студентов, согласно содержанию разделов дисциплины, приведенному выше. Курс лекций проводится в соответствии с п.4.2, п.4.3 данной рабочей программы.

На практических и лабораторных занятиях студенты под руководством преподавателя более подробно знакомятся с изучаемыми вопросами.

9 ФОРМА КОНТРОЛЯ

Экзамен 3 семестр

Программа составлена в соответствии с Федеральным Государственным образовательным стандартом высшего профессионального образования по направлению 090900 «Информационная безопасность», профиль подготовки

«Безопасность автоматизированных систем»