Рабочая учебная программа по дисциплине «Программирование на языке высокого уровня» Направление №230100 «Информатика и вычислительная техника»
Вид материала | Рабочая учебная программа |
- Рабочая учебная программа по дисциплине «Базы данных» Направление №230100 «Информатика, 115.03kb.
- Рабочая учебная программа по дисциплине вычислительная математика специальность: 230100, 133.73kb.
- Рабочая учебная программа по дисциплине «Информатика» Направление №230100 «Информатика, 91.73kb.
- Рабочая учебная программа по дисциплине «Математическая логика и теория алгоритмов», 69.99kb.
- Рабочая программа учебной дисциплины днн. 02 Современные научные проблемы автоматизированных, 221.23kb.
- Рабочая учебная программа дисциплины Моделирование рассуждений (наименование дисциплины), 166.66kb.
- Рабочая учебная программа по дисциплине «Теория принятия решений» Направление №230100, 82.23kb.
- Рабочая учебная программа по дисциплине «Современные интегрированные среды» Направление, 52.27kb.
- Основная образовательная программа высшего профессионального образования Направление, 300.24kb.
- Рабочая учебная программа по дисциплине «Методы оптимизации» Направление №230100 «Информатика, 129.28kb.
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ
ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ
ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ
«МАТИ» - РОССИЙСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНОЛОГИЧЕСКИЙ УНИВЕРСИТЕТ
имени К.Э. ЦИОЛКОВСКОГО
Кафедра «Проектирование вычислительных комплексов»
РАБОЧАЯ УЧЕБНАЯ ПРОГРАММА
по дисциплине «Программирование на языке высокого уровня»
Направление № 230100 «Информатика и вычислительная техника»
Шифр учебного плана: 230100.03пвк
Факультет № 6
Выпускающая кафедра: Проектирование вычислительных комплексов
Форма обучения: очная
Количество часов по дисциплине: 262
Цикл дисциплин: О
Распределение времени студента по видам учебных занятий
(часы аудиторных занятий/самостоятельная работа)
Семестр | 2 | 3 | |
По учебному плану (АР/СР) | 48/50 | 64/100 | |
Лекции (АР/СР) | 16/10 | 32/30 | |
Лабораторные работы (АР/СР) | 32/40 | 32/40 | |
Практические занятия (АР/СР) | - | - | |
Курсовая работа (0/СР) | - | кр/30 | |
Форма контроля | зачет | экзамен | |
Москва 2006 г.
ЦЕЛЬ И ЗАДАЧИ ДИСЦИПЛИНЫ, ЕЕ МЕСТО В УЧЕБНОМ ПРОЦЕССЕ
Целью преподавания дисциплины
Основной целью преподавания курса «Программирование на языке высокого уровня» является фундаментальное образование в области компьютерных наук, направленное на обеспечение профессионального использования компьютеров в деятельности специалиста по направлению 230100 «Информатика и вычислительная техника».
Предметом изучения в данной дисциплине являются современные языки программирования и методы программирования, знание которых необходимо для создания программных продуктов, обеспечивающих эффективность деятельности специалистов любого профиля.
- Задачи изучения дисциплины
Задачами изучения дисциплины являются приобретение навыков в составлении программ на языках программирования, решающих разнообразные практические задачи, освоение основных методов современного программирования, изучение основ новых технологий в современном программировании.
- Перечень тем и разделов предшествующих дисциплин, освоение которых необходимо для изучения данной дисциплины
Для нормального освоения данной дисциплины достаточно знания школьного курса информатики и предшествующих разделов курса информатики, читаемого параллельно студентам этой же специальности, а также разделов математики, связанных с дифференциальным и интегральным исчислением и с элементами векторной и матричной алгебры.
- СОДЕРЖАНИЕ ДИСЦИПЛИНЫ
- Наименования разделов и тем, объем в часах лекционных занятий.
2 семестр (16 часов)
№ | Тема и содержание | Кол-во часов |
| Информатика, как наука. Вторая научно-техническая революция. Кибернетика. Поколения ЭВМ и программного обеспечения. Операционные системы, управление ресурсами ЭВМ. Трансляторы, компиляторы, интерпретаторы. | 2 |
| Идеи развития языков программирования, их классификация. Формализация синтаксиса языка. Машинно-ориентированные языки. Переход от процедурного программирования к объектно-ориентированному. | 2 |
| Структура программы на языке Си. Функции в Си. Передача параметров. Объявления, описания и вызовы функций. Директивы включения файлов. Головные файлы. Стандартные библиотеки функций. Операторы. Оператор возврата. | 2 |
| Алфавит языка Си. Сдвоенные и специальные символы. Идентификаторы. Ключевые слова. Константы и их диапазоны значений. Комментарии. Типы данных. Операторы описания типов. Преобразования типов. Функции ввода - вывода. Форматы ввода - вывода. | 2 |
| Операции в языке Си: арифметические, логические, сравнения, присваивания, условная, адресные и др. Приоритеты операций. Оператор выражения. Составной оператор. Метки. Оператор перехода. Оператор выбора. Условный оператор. | 2 |
| Операторы цикла. Оператор продолжения и оператор прерывания цикла. Особенности функций в Си. Передача параметров по значению. Формальные и фактические параметры. Функции, как параметры. Рекурсивные функции. | 2 |
| Массивы. Переменные с индексами. Распределение памяти для многомерных массивов. Инициализация массивов. | 2 |
| Структуры, смеси, перечисления. Указатели и массивы. Строки, как массивы. Массивы строк. Указатели и функции. Использование указателей при передаче параметров в функциях. | 2 |
3 семестр (32 часа)
№ | Тема и содержание | Кол-во часов |
| Указатели и динамическое распределение памяти. Списки. Указатели и организация работы со списками. Расширение Си в языке Си++. Объявления и описания. Преобразования типов. Операция видимости. Операции динамического распределения памяти. | 2 |
| Расширение в Си++ для функций: перегрузка, передача параметров по умолчанию, шаблоны, вставляемые функции. | 2 |
| Ввод - вывод в Си++. Перегрузки операций. | 2 |
| Ссылки и их использование при передаче параметров. Ссылка, как значение функции. | 2 |
| Поиск в упорядоченном массиве. Оценка числа действий в алгоритме поиска. Вставка и удаление элементов в массиве. Случайное перемешивание элементов массива. Вставка и удаление элементов в списке. | 2 |
| Сортировка массивов методом обмена и индексным методом. Оценка числа действий в алгоритмах сортировки. | 2 |
| Сортировка массивов методом выборки и методом пузырька. | 2 |
| Операции в языке Си++. Основные понятия при описании синтаксиса операций. Приоритеты операций. Операции, использующие скобки. Операции доступа (к компонентам, к глобальным переменным). Унарные операции. | 2 |
| Бинарные операции в Си++. Арифметические, логические, побитовые операции. Условная операция. Операции присваивания. Операция следования. | 2 |
| Работа с файлами в языке Си. Чтение файла, запись в файл. Указатель на файл. Признак конца файла. Буфер файлового обмена. Переход на начало файла или на заданный байт. | 2 |
| Основные возможности языка Си++, расширяющие язык Си (без принципов объектно-ориентированного программирования). | 2 |
| Принципы объектно-ориентированного программирования. Инкапсуляция, наследование, полиморфизм. Компоненты-функции. Примеры инкапсуляции. Структуры и классы в Си++. Различие между структурами и классами. Объекты. Доступ к компонентам объектов. Указатели на себя. Статические переменные. Примеры. | 2 |
| Открытый и защищенные доступы к компонентам класса. Конструкторы, деструкторы. Примеры. Конструкторы копирования. Конструкторы класса с компонентами из другого класса. Примеры. | 2 |
| Интерполяция функциональных зависимостей. Полином Лагранжа. Приближенное вычисление определенных интегралов. Метод трапеций. Метод Симпсона. | 2 |
| Деревья, как динамические структуры данных. Работа с деревьями. Примеры. | 2 |
| Наследование классов. Списки из объектов. Виртуальные функции. Примеры. Эффективные сортировки. Пирамидальная сортировка массивов. Оценка числа действий. | 2 |
- Лабораторные занятия, их содержание и объем в часах
2 семестр (32 часа)
№ | Тема и содержание | Кол-во часов |
| Функции в Си. Передача параметров. Объявления, описания и вызовы функций. Директивы включения файлов. Головные файлы. Стандартные библиотеки функций. Оператор возврата. Задачи. | 4 |
| Операторы описания типов. Преобразования типов. Функции ввода - вывода. Форматы ввода - вывода. Задачи. риоритеты операций. Оператор выражения. Составной оператор. Метки. Оператор перехода. Оператор выбора. Условный оператор. Задачи. | 4 |
| Операторы цикла. Оператор продолжения и оператор прерывания цикла. Особенности функций в Си. Передача параметров по значению. Формальные и фактические параметры. Функции, как параметры. Рекурсивные функции. Задачи. Массивы. Переменные с индексами. Распределение памяти для многомерных массивов. Инициализация массивов. Задачи. | 4 |
| Структуры, смеси, перечисления. Задачи. Указатели и массивы. Строки, как массивы. Массивы строк. Указатели и функции. Использование указателей при передаче параметров в функциях. Задачи. | 4 |
| Указатели и динамическое распределение памяти. Списки. Указатели и организация работы со списками. Задачи. Ввод - вывод в Си++. Перегрузки операций. Задачи. | 4 |
| Ссылки и их использование при передаче параметров. Ссылка, как значение функции. Задачи. Поиск в упорядоченном массиве. Оценка числа действий в алгоритме поиска. Вставка и удаление элементов в массиве. Случайное перемешивание элементов массива. Вставка и удаление элементов в списке. Задачи. | 4 |
| Сортировка массивов методом обмена и индексным методом. Оценка числа действий в алгоритмах сортировки. Задачи. Сортировка массивов методом выборки и методом пузырька. Задачи. | 4 |
| Работа с файлами в языке Си. Задачи. Объектно-ориентированное программирование. Инкапсуляция, наследование, полиморфизм. Задачи. | 4 |
3 семестр (32 часа)
№ | Тема и содержание | Кол-во часов |
| Исследование вычислительных возможностей компьютера на примере вычисления факториала числа. | 4 |
| Работа с матрицами (Варианты). | 4 |
| Программа контроля знаний (Варианты). | 4 |
| Программа шифровки и расшифровки текста в матрице. (Варианты). | 4 |
| Построения графиков функций. (Графические средства). | 4 |
| Вычисление площади фигуры методом Монте-Карло. (Графика. Варианты). | 4 |
| Приближение функций полиномом Лагранжа. (С выводом графиков функций. Варианты). | 4 |
| Программа контроля знаний по нескольким предметам с графическим оформлением. | 4 |
- Курсовая работа, цель, содержание и объем
Цель: Практическое освоение языков программирования высокого уровня, приобретение навыков составления эффективных алгоритмов для решения различных задач с программной реализацией их на современных компьютерах.
Содержание: Решение конкретных задач на ЭВМ, требующих использования современных методов алгоритмизации и средств программирования.
Объем времени на выполнение работы 30 часов
Объем отчета до10 страниц печатного текста шрифт 12
или электронный вариант.
-
САМОСТОЯТЕЛЬНАЯ РАБОТА
2 семестр
- Проработка конспекта лекций (10 часов).
- Подготовка к лабораторным работам (40 часов)
3 семестр
- Проработка конспекта лекций (30 часов).
- Подготовка к лабораторным работам (40 часов)
-
УЧЕБНО-МЕТОДИЧЕСКИЕ МАТЕРИАЛЫ ПО ДИСЦИПЛИНЕ
- Основная литература
1. Бобровский С. Самоучитель программирования на языке С++ в системе С++Build. 2001
2. Керниган Б., Ричи Д. Язык Си
3. Корера А. и др. Visual C++.NET пособие для разработчиков С++. 2003
4.2. Дополнительная литература
1. Седжвик Р. Алгоритмы на C++ Ч. 5 2002
2. Секунов Н. Самоучитель Visual C++.NET. 2002
3. Торстейнсон П., Оберг Р. Архитектура .NET и программирование на Visual C++. 2002
4.Бочков С.О., Субботин Д.М. «Язык программирования СИ для персонального компьютера», М., «Радио и связь», 1990.
5. Керниган Б., Ритчи Д. «Язык программирования СИ», М., «Финансы и статистика», 1992
6. Шилдт Г. «Теория и практика С++», «BHV – Санкт-Петербург», 1996.
7. Бадд Т. «Объектно-ориентированное программирование в действии», «Питер», Санкт-Петербург, 1997.
- Перечень технических средств обучения по данной дисциплине (в том числе ПО.)
- ПК не менее Pentium 4-\2.4G\256Mb\40Gb;