МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ
САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ, МЕХАНИКИ И ОПТИКИ
В. Ф. Звягин, Н. А. Яньшина,
В. Н. Голыничев
Практикум
по современному Фортрану
в курсе Информатики
Учебное пособие
Санкт-Петербург
2010
3
Оглавление
Введение ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 4
1. Лабораторные работы ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . 5
1. 1. Вычисления по формулам ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . . 5
1. 2. Вычисление логических выражений ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . 16
1. 3. Построение графиков функций ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 23
1. 4. Попадание точки в заданную область плоскости ... ... ... ... ... ... ... ... . 32
1. 5. Приближенное вычисление функции – сумма степенного ряда . 39
1. 6. Решение задач с одномерными массивами ... ... ... ... ... ... ... ... ... ... ... . . 50
1. 7. Решение задач с двумерными массивами ... ... ... ... ... ... ... ... ... ... ... ... . . 58
1. 8. Решение задач с использованием функций ... ... ... ... ... ... ... ... ... ... ... . . 71
1. 9. Решение задач с использованием подпрограмм ... ... ... ... ... ... ... ... ... 81
1. 10. Механизмы присоединения данных... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 93
2. Элементы языка программирования Фортран ... ... ... ... ... ... ... ... ... ... ... ... . 98
2. 1. Текст программы на Фортране ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . 98
2. 2. Синтаксис языка Фортран, выражения ... ...
... ... ... ... ... ... ... ... ... ... ... ... 98
2. 3. Оператор присваивания ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . . 103
2. 4. Ветвления и циклы ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . 103
3. Ввод и вывод в Фортране ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 107
3. 1. Бесформатный ввод/вывод ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 108
3. 2. Форматный вывод ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . . 108
4. Вычисления с массивами. ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . . 111
4. 1. Характеристики массива ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 111
4. 2. Размещение массива в памяти компьютера ... ... ... ... ... ... ... ... ... ... . . 112
4. 3. Секции массивов и неявный Do в списках ввода/вывода ... ... ... . 114
5. Программы, модули и механизмы обмена данными ... ... ... ... ... ... ... ... . 114
5. 1. Двухуровневая структура программ ... ... ... ... ... ... ... ... ... ... ... ... ... ... . . 115
5. 2. Трёхуровневая структура модуля ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . 116
5. 3.