Документ взят из кэша поисковой машины. Адрес оригинального документа : http://www.geol.msu.ru/studies/geophys/page26.html
Дата изменения: Mon Jan 31 15:58:02 2005
Дата индексирования: Tue Oct 2 00:14:15 2012
Кодировка: Windows-1251
Геологический факультет МГУ | специальности и специализации
На главную

Геологический факультет > Учебная работа > Учебные планы и программы > Геофизика

Общие сведения
Руководство
Кафедры
Научная работа
Учебно-образовательные ресурсы
Учебная работа
Абитуриенту
Телефонная книга

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

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

Геологический факультет МГУ, кафедра сейсмометрии и геоакустики, тел. 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.

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

 

119899, Россия, Москва, Ленинские горы, МГУ, Геологический факультет, Телефон: (095)939-2970 Факс: (095)932-8889, E-mail: admin@geol.msu.ru

© Геологический факультет, 2002