МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

ФАКУЛЬТЕТ ИНФОРМАТИКИ

УТВЕРЖДАЮ

Декан факультета

« » ____________ 2010 г.

Рабочая программа дисциплины

ПРОГРАММИРОВАНИЕ 4

Направление подготовки

230700 Прикладная информатика

Квалификация выпускника

Бакалавр

Форма обучения

Очная

Томск

2010

1. Цели освоения дисциплины – обучение началам профессионального программирования.

2. Место дисциплины в структуре ООП бакалавриата

Дисциплина входит в естественно-научный цикл, базовую часть.

Дисциплины-предшественники. Программирование 2.

3. Компетенции обучающегося, формируемые в результате освоения дисциплины

В результате освоения дисциплины обучающийся должен:

·  Знать: языки программирования Си и Паскаль, включая их объектно-ориентированые возможности, основные базовые алгоритмы на этих языках, методы доказательства правильности и исследования трудоемкости программ, методы тестирования программ.

·  Уметь: разрабатывать программы умеренной сложности, их тестировать, проводить исследование трудоемкости, доказывать правильность программ.

·  Владеть: способами написания программ умеренной сложности, методами исследования трудоемкости программ, методами доказательства правильности, методами тестирования программ.

Знания и умения соответствуют следующим общекультурным и профессиональным компетенциям ООП ВПО:

- способность использовать, обобщать и анализировать информацию, ставить цели и находить пути их достижения в условиях формирования и развития информационного общества (ОК-1);

НЕ нашли? Не то? Что вы ищете?

- способность использовать основные законы естественнонаучных дисциплин в профессиональной деятельности и эксплуатировать современное электронное оборудование и информационно­-коммуникационные технологии в соответствии с целями образовательной программы бакалавра (ПК-3);

- способность ставить и решать прикладные задачи с использованием современных информационно-коммуникационных технологий (ПК-4);

- способность моделировать и проектировать структуры данных и знаний, прикладные и информационные процессы (ПК-9);

- способность применять к решению прикладных задач базовые алгоритмы обработки информации, выполнять оценку сложности алгоритмов, программировать и тестировать программы (ПК-10);

- способность применять методы анализа прикладной области на концептуальном, логическом, математическом и алгоритмическом уровнях (ПК-17);

- способность применять системный подход и математические методы в формализации решения прикладных задач (ПК-21);

4. Структура и содержание дисциплины «Программирование 4»

Общая трудоемкость дисциплины составляет 2 зачетные единицы, 72 часа, реализуется на протяжении одного семестра. Параллельно с дисциплиной «информатика и программирование 4» проводится учебная практика по программированию.

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

ПРОГРАММИРОВАНИЕ 4

1. Программирование на языке Си

Трансляция, редактирование и выполнение программы на языке Си. Арифметические и символьные переменные, константы в Си, операции над ними, присваивание значений. Стандартные средства ввода и вывода. Логические и битовые значения, операции над ними. Условные и выбирающие операторы, циклы с параметром и с условием. Указатели и массивы. Процедуры и функции, их вызов и описание. Подстановка параметров по значению, по ссылке. Структуры (записи), действия над ними. Описание типа. Структура программы, макросы. Управление процессом трансляции, использование стандартных библиотек. Библиотека стандартных математических функций. Символьные переменные, строки, библиотека функций для выполнения над ними операций. Файлы, библиотека функций для работы с ними. Библиотека функций распределения памяти. Библиотеки функций для взаимодействия с операционной системой и с файловой системой. Библиотека для работы с консолью и экраном. Графическая библиотека в Си.

2. Объектно-ориентированное программирование

Модульное программирование. Модульное программирование в Паскале и Си. Парадигмы объектно-ориентированного программирования. Описание классов в Паскале и Си. Примеры объектно-ориентированных программ. Объекты-списки, алгоритмы с ними.

3. Программирование на языке C++

Понятие класса, понятие объекта. Инкапсуляция: спецификаторы public, protected, private. Функции-друзья, классы-друзья (спецификатор friend). Наследование, множественное наследование. Полиморфизм, виртуальные функции. Конструкторы и деструкторы. Перегрузка функций и операторов. Параметры функций по умолчанию. Ссылки, отличие ссылок от указателей. Потоки ввода/вывода С++. Обработка исключений (try/catch). Работа с памятью с помощью операторов new и delete. Шаблоны.

Распределение часов дисциплины по темам и видам работ

п/п

Раздел

дисциплины

Всего часов

Аудиторные занятия (час), в том числе

Самос-тояте-льная

работа

Формы текущего контроля успеваемости

лекции

семи-нары

лабора-торные занятия

1

Программирование на языке Си

12

6

10

Письменный контроль по теории.

2

Объектно-ориентированное программирование

16

8

16

Письменный контроль по теории

3

Программирование на языке C++

20

10

14

Письменный контроль по теории

ИТОГО:

72

32

40

Итоговый письменный контроль

5. Образовательные технологии

Лекции проводятся в сопровождении иллюстративного материала в форме презентаций. Самостоятельная работа проводится в компьютерном классе, оснащенном соответствующим программным обеспечением.

6. Учебно-методическое обеспечение самостоятельной работы студентов. Оценочные средства для текущего контроля успеваемости, промежуточной аттестации по итогам освоения дисциплины

Виды самостоятельной работы студентов: повторение лекционного материала; написание и исследование программ.

Контроль самостоятельной работы студентов.

Текущий контроль – не менее 3-х раз в течение семестра в виде письменного ответа на теоретические вопросы по содержанию дисциплины.

Промежуточная аттестация по итогам освоения дисциплины – итоговый письменный экзамен по теоретическим вопросам и решению задач в виде составления и исследования программ.

7. Учебно-методическое и информационное обеспечение дисциплины

а) основная литература:

1. Захаров программирование. – Томск: Изд-во НТЛ, 2007. – 296 с.

2. Костюк программирования. Разработка и анализ алгоритмов: Учебное пособие. – Томск: Изд-во Томского ун-та, 2006.

б) дополнительная литература:

1. Microsoft Software Developer Network Library – July 2005.

2.  Алгоритмы + структуры данных = программы. – М.: Мир, 1985.

3.  Систематическое программирование. – М.: Мир, 1975.

4.  Дисциплина программирования. – М.: Мир, 1978, 275 c.

5. , Епанешников в среде Turbo Pascal 7.0. – 3-е изд., стер. – М.: ДИАЛОГ-МИФИ, 1995.

6. , Вальвачев программирование на языке Си: от Turbo C до Borland C++. Справочное пособие. – Минск: Высшая школа, 1992.

7.  Теория графов. Алгоритмический подход. – М.: Мир, 1978.

8. , Фомин на языке Си. – Москва: Финансы и статистика, 1999. – 600 с.

9.  Язык Си. Руководство для начинающих. – М.: Мир, 1988.

10.  Программирование на BORLAND C++ для профессионалов. – Мн.: , 1999. – 800 с.

в) программное обеспечение и Интернет-ресурсы:

1. Трансляторы с языка Си и Паскаль в операционной системе Windows или Linux.

2. Программа для проведения презентаций – Power Point или аналогичная.

3. Интернет-браузер – Microsoft Explorer или аналогичный.

8. Материально-техническое обеспечение дисциплины

Лекционная аудитория должна быть оборудована проекционным оборудованием: компьютером и проектором, а также программными средствами для их функционирования.

Компьютерный класс, компьютеры должны быть объединены в локальную сеть с выходом в Интернет.

Программа составлена в соответствии с требованиями ФГОС ВПО с учетом рекомендаций и ООП ВПО по направлению подготовки 230700 Прикладная информатика.

Авторы – профессор , ст. преп. .

Рецензент – доцент .

Программа одобрена на заседании кафедры теоретических основ информатики факультета информатики

от « » __________ 2010 года, протокол № ________ .