МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ ФГБОУ ВПО «Саратовский государственный университет имени Н.Г. Чернышевского» Балашовский институт (филиал) УТВЕРЖДАЮ: Директор БИ СГУ доцент А.В. Шатилова _________________ «10» ноября 2014 г. Рабочая программа дисциплины Алгоритмизация и программирование Направление подготовки 44.03.05 «Педагогическое образование» Профиль подготовки «Математика и информатика» Квалификация (степень) выпускника Бакалавр Форма обучения очная Балашов 2014 СОДЕ РЖ АН И Е С О Д Е Р Ж А Н И Е ............................................................................................... 2 1. Цели освоения дисциплины ............................................................................... 3 2.Место дисциплины в структуре ООП бакалавриата ........................................ 3 3.Компетенции обучающегося, формируемые в результате освоения дисциплины.............................................................................................................. 3 Планируемые результаты обучения по дисциплине ............................................ 3 4. Содержание и структура дисциплины .............................................................. 4 4.1. Объем дисциплины .......................................................................................... 4 4.2. Содержание дисциплины ................................................................................ 4 4.3. Структура дисциплины .................................................................................... 5 5. Образовательные технологии, применяемые при освоении дисциплины .... 5 Информационные технологии, используемые при осуществлении образовательного процесса по дисциплине .......................................................... 5 6. Учебно-методическое обеспечение самостоятельной работы студентов. Оценочные средства для текущего контроля успеваемости, промежуточной аттестации по итогам освоения дисциплины ....................................................... 6 Самостоятельная работа студентов по дисциплине............................................. 6 Оценочные средства для текущего контроля успеваемости и промежуточной аттестации по дисциплине ..................................................................................... 6 7. Данные для учета успеваемости студентов в БАРС ........................................ 7 8. Учебно-методическое и информационное обеспечение дисциплины .......... 8 Литература по курсу................................................................................................ 8 Основная литература: ............................................................................................. 8 Дополнительная литература: .................................................................................. 8 Интернет-ресурсы ................................................................................................... 8 Программное обеспечение ..................................................................................... 9 9. Материально-техническое обеспечение дисциплины ..................................... 9 1. Цели освоения дисциплины Целями освоения дисциплины «Алгоритмизация и программирование» являются: формирование систематизированных знаний в области информатики; формирование алгоритмического мышления. 2.Место дисциплины в структуре ООП бакалавриата Дисциплина относится к дисциплинам по выбору профессионального цикла (Б3.ДВ1). Для освоения указанной дисциплины обучающиеся должны обладать знаниями, умениями и готовностями, полученными из курсов «Информатика». Основные навыки, полученные при изучении данной дисциплины необходимы для курсов «Криптография», «Информационные системы», «Теория графов». 3.Компетенции обучающегося, освоения дисциплины формируемые в результате Процесс изучения дисциплины «Алгоритмизация и программирование» направлен на формирование следующих компетенций: Выпускник должен обладать следующими общекультурными компетенциями (ОК): готовностью использовать основные методы, способы и средства получения, хранения, переработки информации, готовностью работать с компьютером как средством управления информацией (ОК-8). Выпускник должен обладать следующими специальными компетенциями (СК): в области математики и информатики: способностью ориентироваться в основных фактах, идеях и методах математики и информатики, использовать научный язык, методологию программирования, современные компьютерные технологии, применять знания при решении практических задач (СК-1). Планируемые результаты обучения по дисциплине В результате освоения дисциплины обучающийся должен: •Знать: принципы построения алгоритмов; типы данных и базовые конструкции языка программирования C++; основные приемы программирования; интегрированные среды изучаемых языков программирования; основы объектно-ориентированного программирования •Уметь: составлять схемы алгоритмов; составлять программы на алгоритмическом языке высокого уровня; работать в интегрированной среде программирования Codebloks •Владеть: стандартными программными средствами решения типовых оптимизационных задач; 4. Содержание и структура дисциплины 4.1. Объем дисциплины Общая трудоемкость дисциплины составляет 3 зачетные единицы, 108 часов. – по очной форме обучения: 36 часов аудиторной работы (18 часа лекций и 18 часа лабораторных работ), 72 часa самостоятельной работы. Дисциплина изучается в 4 семестре, ее освоение заканчивается зачетом. 4.2. Содержание дисциплины Тема 1. Введение в программирование. Линейные программы, циклы и массивы Понятие алгоритма. Исполнитель, система команд исполнителя. Свойства алгоритмов. Способы записи алгоритмов. Методологии программирования. Программирование как раздел информатики. Метафоры (парадигмы) программирования. Методологии программирования. История и эволюция. Этапы решения задач на ЭВМ. Синтаксис и семантика формального языка. Естественные и формальные языки. Язык программирования. Классификация языков программирования. Система программирования. Основные элементы. Линейные программы и ветвления. Основные типы и диапазоны их значений. Простейшие операции языка С++ Переменные, их адреса. Динамические переменные и указатели. Ввод-вывод на основании потоков. Оператор ветвления и выбора. Основные модули. Модуль cmath. Геометрия. Оператор множественного ветвления. Операторы цикла: с предусловием, с постусловием, с параметром. Поиска и подсчет на основании циклов. Форматированный вывод Описание и использование функций. Рекурсивная функция. Перезагрузка функций. Тема 2. Массивы и последовательные контейнеры Описание массива в языке программирования C++. Простейшие задачи обработки массивов. Массив количеств. Массив простых чисел (Решето Эратосфера). Сортировка массива. Модуль algorithm. Многомерные массивы. Динамические массивы. Объект vector. Объекты list и deque. Основные методы и свойства данных объектов. Примеры использования. Тема 3.Cтроки и символы Символьный тип. Генерация символов таблицы ASCCI. Массив символов. Тип string. Основные методы и свойства данного объекта. Модуль sstream. Тема 4. Пары и структуры Пары (pair). Примеры описания пар. Функция создания пары. Сортировка массива пар. Структуры (struct). Описание структур. Понятие конструктора и переопределение логических и математических операций для структур. Сортировка структур. Примеры использования структур. Тема 5. Множество (set) Особенности использования множества в программировании. Добавление и удаление элементов из множества. Распечатка множества. Объединение, пересечение и разность множеств. Примеры использования множеств. Тема 6. Ассоциативные массивы (map) Карта, как соответствие между типом ключа и значения. Добавление и удаление элементов из карты. Распечатка карты. 4.3. Структура дисциплины № п / п 1 2 3 4 5 6 7 8 Раздел дисциплины Введение в программирование. Линейные программы, циклы и функции Массивы Строки и символы Пары и структуры Множество (set) Ассоциативные массивы (map) Контейнеры адаптеры Итого Сем ест р Нед еля сем ест ра Виды учебной работы, включая самостоятельную работу студентов и трудоемкость (в часах) ПЗ ЛР 4 СРС 16 Формы текущего контроля успеваемости (по неделям семестра) Формы промежуточной аттестации (по семестрам) 4 Л 4 КР 4 4 4 4 4 4 2 2 2 2 4 2 2 2 2 16 8 8 8 8 Отчет по ЛР 4 Отчет по ЛР 6 Отчет по ЛР 7 Отчет по ЛР 8 Отчет по ЛР 9 4 2 2 8 Отчет по ЛР 10 18 18 72 зачет Отчет по ЛР 1-3 5. Образовательные технологии, применяемые при освоении дисциплины В ходе изучения дисциплины предусмотрено использование следующих образовательных технологий: лекции, практические занятия, проблемное обучение, модульная технология, проблемная лекция, подготовка письменных аналитических работ, самостоятельная работа студентов. В учебном процессе предусмотрено использование активных и интерактивных форм занятий и методов обучения (деловых и ролевых игр, проектных методик, мозгового штурма, разбора конкретных ситуаций, практико-ориентированных задач, иных форм) в сочетании с внеаудиторной работой. Удельный вес занятий, проводимых в интерактивных формах, должен составлять не менее 30 % аудиторных занятий. Для обеспечения доступности обучения инвалидам и лицам с ограниченными возможностями здоровья учебные материалы могут быть адаптированы с учетом особых потребностей: в печатных материалах укрупнен шрифт, произведена замена текста аудиозаписью, использованы звуковые средства воспроизведения информации. Информационные технологии, используемые при осуществлении образовательного процесса по дисциплине Язык программирования C++; Использование информационных ресурсов, доступных в информационнотелекоммуникационной сети Интернет (см. перечень ресурсов в п. 8 настоящей программы). Создание электронных документов (компьютерных презентаций, видеофайлов, плейкастов и т. п.) по изучаемым темам и электронных коллекци 6. Учебно-методическое обеспечение самостоятельной работы студентов. Оценочные средства для текущего контроля успеваемости, промежуточной аттестации по итогам освоения дисциплины Самостоятельная работа студентов по дисциплине К самостоятельной работе студентов относится: детальная проработка лекций, учебной литературы, самостоятельное доказательство указанных преподавателем теорем, составление отдельных алгоритмов и программ, выполнение домашних и индивидуальных расчетных заданий, подготовка к лабораторным работам, оформление отчетов по лабораторным работам, выполнение контрольных работ. Оценочные средства составляются преподавателем самостоятельно при ежегодном обновлении банка средств. Количество вариантов заданий зависит от числа обучающихся. Самостоятельная работа студентов организуется по лекционным материалам и рекомендованной литературе. Для промежуточной аттестации используются результаты решения контрольной работы. Оценочные средства для текущего контроля успеваемости и промежуточной аттестации по дисциплине КОНРОЛЬНЫЕ ВОПРОСЫ ПО КУРСУ 1. Понятие алгоритма. Исполнитель, система команд исполнителя. Свойства алгоритмов. 2. Основные типы и диапазоны их значений Простейшие операции языка С++. Переменные, их адреса. Динамические переменные и указатели. 3. Ввод-вывод на основании потоков. 4. Оператор ветвления и выбора. 5. Основные модули. Модуль cmath. Геометрия. 6. Оператор множественного ветвления. 7. Операторы цикла: с предусловием, с постусловием, с параметром. 8. Описание и использование функций. 9. Рекурсивная функция. 10. Описание массива языке программирования C++. Простейшие задачи обработки массивов. 11. Массив количеств. 12. Массив простых чисел (Решето Эратосфера). 13. Сортировка массива. 14. Модуль algorithm. 15. Многомерные массивы. Динамические массивы. 16. Объект vector. Объекты list и deque. 17. Cтроки и символы. 18. Символьный тип. Генерация символов таблицы ASCCI. Массив символов. 19. Тип string. Основные методы и свойства данного объекта. 20. Пары (pair). Примеры описания пар. Функция создания пары. Сортировка массива пар. 21. Структуры (struct). Описание структур. Понятие конструктора и переопределение логических и математических операций для структур. 22. Сортировка структур. 23. Множество (set). 24. Ассоциативные массивы (map). 25. Стек (stack). Основные методы и свойства данных объектов. Примеры использования. 26. Очередь (queue). Основные методы и свойства данных объектов. Примеры использования. 27. Очередь с приоритетом (priority_queue). Основные методы и свойства данных объектов. Примеры использования. 7. Данные для учета успеваемости студентов в БАРС Таблица 1. Примерная таблица максимальных баллов по видам учебной деятельности. 1 2 3 4 5 6 7 8 Автоматизиро Другие виды Промежуто Лабораторн Практическ Самостоятел Лекции ванное учебной чная Итого ые занятия ие занятия ьная работа тестирование деятельности аттестация 10 10 13 37 0 0 30 100 Примерная программа оценивания учебной деятельности студента Лекции Посещаемость, опрос, активность и др.за один семестр –от 0 до 10 баллов. Лабораторные занятия Контроль выполнения лабораторных работ в течение одного семестра - от 0 до 10 баллов Практические занятия Контроль выполнения практических работ в течение одного семестра - от 0 до 13 баллов. Самостоятельная работа Отчет по заданиям к практическим работам для самостоятельного выполнения – от 0 до 37 баллов Автоматизированное тестирование Не предусмотрено. Дополнительно Не предусмотрено. Промежуточная аттестация При определении разброса баллов при аттестации преподаватель может воспользоваться следующим примером ранжирования: 21-30 баллов – ответ на «отлично» 11-20 баллов – ответ на «хорошо» 6-10 баллов – ответ на «удовлетворительно» 0-5 баллов – неудовлетворительный ответ. Таким образом, максимально возможная сумма баллов за все виды учебной деятельности студента за один семестр по дисциплине «Алгоритмизация и программирование» составляет 100 баллов. Таблица 2. Пример пересчета полученной студентом суммы баллов по дисциплине «Алгоритмизация и программирование» в оценку (экзамен): 86-100 70-85 55-69 0-54 50 баллов и более меньше 50 баллов «отлично» «хорошо» «удовлетворительно» «не удовлетворительно» «зачтено» (при недифференцированной оценке) «не зачтено» 8. Учебно-методическое и информационное обеспечение дисциплины Литература по курсу Основная литература: 1. Немцова, Тамара Игоревна. Программирование на языке высокого уровня. Программирование на языке С++ [Электронный ресурс] : Учебное пособие / Тамара Игоревна Немцова, Светлана Юрьевна Голова, Алексей Игоревич Терентьев. Москва : Издательский Дом "ФОРУМ" ; Москва : Издательский Дом "ИНФРА-М", 2012. - 512 с. http://znanium.com/go.php?id=244875 2. Дорогов, Виктор Георгиевич. Основы программирования на языке С [Электронный ресурс] : Учебное пособие / Виктор Георгиевич Дорогов, Екатерина Георгиевна Дорогова. - Москва : Издательский Дом "ФОРУМ" ; Москва : Издательский Дом "ИНФРА-М", 2011. - 224 с. http://znanium.com/go.php?id=225634 Дополнительная литература: 1. Гуриков, Сергей Ростиславович. Введение в программирование на языке Visual C# [Электронный ресурс] : Учебное пособие / Сергей Ростиславович Гуриков. - Москва : Издательство "ФОРУМ" ; Москва : ООО "Научно-издательский центр ИНФРА-М", 2013http://znanium.com/go.php?id=404441 Интернет-ресурсы 1. http://www.cplusplus.com/— Официальный сайт языка программирования C++. Библиотеки, с подробным описанием ее элементов и примеры того, как использовать ее функции 2. http://www.codeblocks.org/ 3. https://code-live.ru/tag/cpp-manual/ Программирование для начинающих 4. http://altcode.ru/c-plus/ 5. http://www.youtube.com/watch?v=Ev9SdvxV1QE 6. http://www.intuit.ru/studies/courses/17/17/info 7. http://www.intuit.ru/studies/courses/43/43/info Программное обеспечение Code::Blocks — свободная кроссплатформенная среда разработки 9. Материально-техническое обеспечение дисциплины 1. Стандартно оборудованная лекционная аудитория № 35 для проведения интерактивных лекций: видеопроектор, интерактивная доска, компьютер, обычная доска, пластиковая доска; 2. Компьютерные классы (аудитории №№ 24, 25); Рабочая программа дисциплины «Алгоритмизация и программирование» составлена в соответствии с требованиями ФГОС ВО по направлению подготовки 44.03.05 "Педагогическое образование", профиль "Математика и информатика" (квалификация (степень) «бакалавр») и требованиями приказа Министерства образования и науки РФ № 1367 от 19.12.2013 г. о порядке организации и осуществления образовательной деятельности по образовательным программам высшего образования – программам бакалавриата, программам специалитета, программам магистратуры. Программа разработана в 2014 г. (одобрена на заседании кафедры физики и информационных технологий, протокол № 2 от «16» октября 2014 года). Автор: канд. физ.-мат. наук, доцент Кузнецов О.А. Зав. кафедрой физики и информационных технологий канд. пед. наук, доцент Сухорукова Е.В. Декан факультета математики, экономики и информатики канд. пед. наук, доцент Кертанова В.В.