Общее Новости Студенту и аспиранту Школьнику и абитуриенту Учебные и научные материалы Учебные карты Энциклопедия GeoWiki Форум Журналы Конференции
english version
Правила:
Правила проведения зимней экзаменационной сессии на геологическом факультете МГУ  
Учебные программы специальности
Требования к выпускным квалификационным работам:
Общие требования к выпускным квалификационным работам 
Оформление титульных листов 
Рекоментации к оформлению производственной практики 
 

Содержание курса | Практические заниятия | Литература

Программирование.

Геологический факультет МГУ, кафедра сейсмометрии и геоакустики, тел. 939-33-42.

Автор √ асс. Марченко Антон Леонардович.

Курс читается в 3 и 4 семестрах для студентов специальности 011200-геофизика.

Объем курса √ 90 часов, лекции - 30 часов, практические занятия √ 60 часов.

Форма контроля. Прием практических работ с собеседованием; зачеты в 3 и 4 семестрах.

Аннотация. Курс посвящен языку программирования C++ и основам объектно-ориентированного программирования.

Вверх

Содержание курса.

1. Базовые понятия.

Организация памяти ЭВМ. Виртуальная модель памяти. Процессор ЭВМ. Системы счисления и алгоритмы преобразования. Преобразование дробной части вещественного числа. Дополнительный код. Язык и грамматика. Формы Бэкуса-Наура. Грамматика и проблема смысла. Развитие языков программирования. Основные характеристики языков программирования. Типы данных. Контроль типов. Семантика языка. Транслятор. Компоновщик. Тип компоновки.

2. Структура операторов языка C++.

Алфавит C++. Правила образования идентификаторов. Ключевые слова и имена C++. Операции и знаки пунктуации. Литералы. Структура предложения C++. Объекты и переменные. Основные типы C++. Комментарии. Объявление и определение переменных и констант. Перечень операций. Приоритет операций и скобочная структура выражений. Разделители. Первичное выражение. Постфиксное выражение. Унарное выражение. Выражение приведения. Выражения с указателями. Мультипликативные выражения. Аддитивтивные выражения. Выражения сдвига. Выражения отношения. Выражения равенства. Побитовые выражения. Логические выражения. Выражения присваивания. Выражения с операцией запятая. Константные выражения. Выражение и l-выражение.

3. Структура программы C++.

Операторы C++. Программа. Модули и сегменты. Программный модуль. Атрибуты объектов: класс памяти. Объявление переменных. Область действия имени. Пространство имен и область видимости объекта. Время жизни объекта. Глобальные переменные и константы. Помеченный оператор. Оператор перехода. Оператор return. Выбирающий оператор. Операторы цикла. Оператор continue как средство управления циклом. Определение указателя. Указатели на константу и константные указатели. Ссылки. Специальный тип void. Массивы. Синтаксис объявления. Константные выражения. Основные свойства массивов. Способы навигации. Массив и константный указатель. Массивы и операция sizeof. Массив констант. Многомерный массив. Многомерные массивы и указатели. Символьная строка. Препроцессор. Директива препроцессора define. Директива include. Управление препроцессором. Функциональные макроопределения. Предопределенные макроопределения. Перечисления. Функция. Прототип. Предварительная инициализация параметров функции. Вызов функции. Точка вызова и точка возврата. Функции с переменным количеством параметров. Размещение параметров.

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

Механизмы преобразования основных типов данных в C++. Список средств порождения производных типов. typedef-объявление. Тип функции и указатель на функцию. Класс. Объявление класса. Объединения. Область видимости класса. Встроенные функции. Интерфейс класса. Совместно используемые функции. Инициализация объекта класса. Конструкторы. Основные свойства. Переопределение конструктора. Инициализация объекта: параметры и инициализаторы. Конструктор копирования. Конструкторы преобразования и преобразующие функции. Операция new и порождение объектов. Удаление объектов и освобождение памяти. Деструкторы. Массивы объектов. Указатель this. Статические члены класса. Наследование. Базовые и производные классы. Инкапсуляция и управление доступом. Характеристики уровней доступа. Друзья класса. Указатели на объекты. Виртуальные функции. Чистые виртуальные функции и абстрактные классы. Виртуальные деструкторы. Множественное наследование. Виртуальные классы. Вложенные классы. Операторные функции. Шаблоны функций и классов. Ввод-вывод в C++. Работа с файлами. Механизмы обработки исключительных ситуаций.

Вверх

Практические занятия.

Практические занятия преследуют две цели:

1. Выработку навыков самостоятельной работы с вычислительной техникой, освоение методов работы в среде DOS и Windows.

2. Закрепление лекционного материала. С этой целью предполагается ознакомление слушателей с компилятором Borland C++, самостоятельное написание не менее пяти программ различной сложности в каждый семестр. Предполагается, что это будут программы, в которых методы объектно-ориентированного программирования используются для решения задач, связанных с организацией ввода-вывода, работой с массивами и указателями, реализацией вычислительных алгоритмов и алгоритмов сортировки.

Вверх

Литература.

  1. Бабэ Бруно. Просто и ясно о Borland C++. М., БИНОМ, 1994.
  2. Джамса К. Учимся программировать на языке C++. М., Мир, 1997.
  3. Подбельский В.В. Язык C++. М., Финансы и статистика, 1995.
  4. Пол И. Объектно-ориентированное программирование с использованием C++. Киев, НИИПФ ДиаСофт Лтд, 1995.
  5. Сван Т. Освоение Borland C++ 4.5. Киев, Диалектика, 1996.
  6. Стенли Б. Липпман. C++ для начинающих. Т.1,2. М., Унитех; Рязань, Гэлион, 1992.
  7. Сэвитч У. C++ в примерах. М., ЭКОМ, 1997.
  8. Фейсон Т. Объектно-ориентированное программирование на Borland C++ 4.5. Киев, Диалектика, 1996.
  9. Шилдт Г. Самоучитель C++. С.-Пб, BHV-С.-Пб., 1997.
  10. Эллис М., Строуструп Б. Справочное руководство по языку C++ с комментариями. М., Мир, 1992.

Вверх | Содержание курса | Практические заниятия | Литература

  119991, Российская Федерация, Москва, ГСП-1, Ленинские горы, Московский государственный университет имени М.В. Ломоносова, Геологический факультет,
Телефон: (495)939-2970, Факс: (495)932-8889, E-mail: dean@geol.msu.ru
E-mail пресс-секретаря Анастасии Владимировны Симаненко: geolmsu@mail.ru Телефон: 8-926-210-32-69
 
     
Rambler's Top100 Service