НОВОСИБИРСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
Кафедра вычислительной математики
 
П Р О Г Р А М М А
курса лекций "Программирование" для
студентов механико-математического
факультета (1 курс 1982-83 уч.год),
специальность - прикладная математика,
летняя сессия

 

I. ВВЕДЕНИЕ

1.Понятия ЭВМ, программы, программирования. Язык блок-схем.

2.Основные этапы решения задачи на ЭВМ. Диалоговый способ общения с ЭВМ, ТВС. Режим работы: автономный, автоматический и передачи. Основные директивы диалога. Схема работы на ТВС.
 
II. ПРОГРАММИРОВАНИЕ НА ЯЗЫКЕ ВЫСОКОГО УРОВНЯ. ПАСКАЛЬ-360

3. Нотация, терминология и лексика.
Синтаксические диаграммы. Базисная лексика. Комментарии. Имена. Числа. Разделители. Строки.

4. Стандартные скалярные типы.
Логический тип. Тип целый. Тип вещественный. Тип литерный.

5. Программа.
Заголовок программы; стандартные внешние файлы ввода и вывода; стандартные процедуры и функции работы с этими файлами. Совокупность описаний меток. Совокупность определений констант. Совокупность определений типов; скалярные типы и отрезки типов. Совокупность описаний переменных. Тело программы.

6. Выражения и операторы.
Выражения. Оператор присваивания. Составной оператор. Условные операторы: оператор-если, оператор выбора. Операторы цикла: цикл с параметром, цикл с условием продолжения, цикл с условием окончания. Оператор перехода. Пустой оператор.

7. Структурные типы.
Типы множеств. Типы файлов. Типы массивов и записей. Согласование структурных типов.

8. Динамические структуры данных.
Статические и динамические данные. Список. Указатели и стандартная процедура NEW. Понятие стека и простой очереди. Двусвязный список. Двоичное дерево и его просмотры: прямой, обратный и концевой. Деревья и их представление в виде двоичных деревьев. Понятие графа.

9. Процедуры и функции.
Понятие подпрограммы: процедуры и функции. Операторы вызова процедуры и обращение к функции. Формальные и фактические параметры. Параметры-значения, параметры-переменные, параметры-процедуры и параметры-функции. Совокупность описаний процедур и функций. Области действия имен и области существования объектов; локальные, глобальные и стандартные имена. Побочный эффект у функции. Понятие рекурсии; динамическое размножение локальных переменных и параметров-значений; глубина рекурсии.

10. Управление выполнением Паскаль-программ в ЕС ЭВМ.
Пакетный способ общения с ЭВМ. Язык управления заданиями. Шаг задания для Паскаля. Режимы и директивы трансляции. Диагностика ошибок при исполнении Паскаль-программ: аварийная распечатка, вставка утверждений. Динамический профиль Паскаль-программ. Доказательство правильности программы. Понятие тестирования и выбор тестового набора.
 

III.ПОСТРОЕНИЕ ПРОГРАММ ДЛЯ ВЫЧИСЛИТЕЛЬНЫХ ЗАДАЧ. ФОРТРАН ЕС

11. Типы данных.
Типы целый, вещественный, комплексный и логический стандартной и нестандартной длин; представление значений этих типов в памяти ЭВМ; константы. Неявный оператор типа; задание начальных значений переменным и массивам. Оператор эквивалентности.

12. Выражения и операторы.
Встроенные функции. Арифметические и логические выражения. Оператор-функция. Операторы присваивания: арифметический, логический и меток. Операторы перехода по предписанию и вычислению. Условные логический и арифметический операторы.

13. Модули.
Структура программы; главный модуль; модуль-функция; модуль-подпрограмма. Задание общих данных модулей: именованные и неименованные общие области памяти.

14. Управление выполнением Фортран-программ в ЕС ЭВМ.
Шаг задания для Фортрана. Диагностика ошибок при трансляции и исполнении Фортран-программ. Пакеты и операторы отладки Фортран-программ.

Литература

1. Бухтияров А.М., Маликова Ю.П., Фролов Г.Д. Практикум по программированию на Фортране (ОС ЕС ЭВМ). М., Наука, 1979.
2. Грогоно П. Программирование на языке ПАСКАЛЬ. М.,Мир, 1982.
3. Любимский Э.З., Мартынюк В.В., Трифонов Н.П. Программирование. М., Наука, 1980.
4. Основы языка Паскаль-360. Сост. В.Н.Касьянов, Новосибирск, НГУ, 1982.

Дополнительная литература

1. Баррон Д. Введение в языки программирования. М., Мир, 1980.
2. Вирт Н. Систематическое программирование. Введение. М., Мир, 1977.
3. Йенсен К., Вирт Н. Паскаль. Руководство для пользователя и описание языка. М., Финансы и статистика, 1982.
4. Касьянов В.Н., Сабельфельд В.К., Трахтенброт М.Б. Сборник индивидуальных заданий по практике на ЭВМ. Новосибирск, НГУ, 1981.
5. Кнут Д. Искусство программирования для ЭВМ. Основные алгоритмы. М., Мир, 1976.
6. Программирование на мини-фортране. Сост. В.Н.Касьянов, Новосибирск, НГУ, 1981.
 

Программу составил
доцент В.Н. Касьянов