Название: Фортран для студентов Автор: Бартеньев О.В. Издательство: Диалог-МИФИ Год: 1999 Формат: PDF Страниц: 397 Размер: 27,47 Мб Язык: русский
Пособие может быть использовано для освоения методов и техники программирования на языке Фортран 90 и 95. Наряду с изложением Фортрана в пособии рассмотрены основные элементы программирования, включающие, в том числе методы разработки алгоритмов, правила их записи в виде линейных схем, технику кодирования (запись исходного кода программы) и используемые при тестировании программ приемы. Пособие оснащено большим числом задач, которые можно использовать как для самостоятельной проработки, так и для лабораторного практикума в студенческой группе. Предназначено для преподавателей, студентов, аспирантов, инженеров и научных работников.
Предисловие Как записать и запустить программу Свободный формат записи программы Консоль-проект Обработка программы Некоторые правила программирования Структура головной программы Имена Экономим время вычислений Стиль записи программы Объекты данных Виды объектов данных Скаляры и массивы Встроенные числовые типы данных Стандартные числовые типы данных. Разновидности числовых типов данных Логический тип данных Буквальные константы Целые константы. Вещественные константы. Комплексные константы. Логические константы Именованные константы Переменные Задание начальных значений переменных Простая форма конструктора массива Правила умолчания о типах данных Изменение правил умолчания Операции и выражения Арифметические операции Арифметические выражения Целочисленное деление Ранг и типы арифметических операндов Ошибки округления Выражения отношения Логические выражения Приоритет выполнения операций Простой ввод-вывод Операторы ввода-вывода Некоторые правила ввода Ввод из текстового файла Вывод на принтер Элементы программирования Алгоритм и программа Базовые структуры алгоритмов Блок операторов и конструкций. Ветвление. Цикл. Прерывание цикла. Объединение условий Программирование “сверху-вниз” Использование функций. Использование подпрограмм. Использование модулей Виды процедур Рекурсивные процедуры. Формальные процедуры Оператор RETURN выхода из процедуры Этапы проектирования программ Правила записи исходного кода Задачи к первым шести главам Логические выражения Табуляция функции одной переменной Поиск корня функции методом перебора Одномерный массив Задачи с использованием процедур Файлы Фортрана Виды файлов. Файловый указатель Номер устройства Внутренние файлы Внешние файлы Двоичные файлы последовательного доступа. Неформатные файлы последовательного доступа. Текстовые файлы последовательного доступа Файлы прямого доступа Удаление записей из файла прямого доступа Выбор типа файла Операции над внешними файлами Операторы управления файлами. Оператор BACKSPACE. Оператор REWIND. Оператор ENDFILE. Оператор OPEN. Оператор CLOSE. Оператор READ. Оператор WRITE. Оператор PRINT. Оператор INQUIRE. Функция EOF Задачи Массивы Понятие массива Размещаемые массивы Ввод одномерного массива из файла Ввод в массив заданного числа полей данных файла. Ввод в массив всего файла Вывод одномерного массива Многомерные массивы Характеристики массивов Способы объявления массивов Размещение элементов массива в памяти ЭВМ Одновременное объявление объектов разной формы Массивы нулевой длины Конструктор массива Инициализация массива Использование массивов Сечение массива Использование сечений массива Выборочное присваивание массива Массивы-ссылки Прикрепление ссылки к адресату. Открепление ссылки от адресата. Использование массивов-ссылок Автоматические массивы Статус динамических массивов модулей Массивы - формальные параметры процедур Массивы заданной формы. Массивы, перенимающие форму Массив как результат функции Встроенные функции для работы с массивами Перечень применяемых с массивами функций. Задачи и примеры на встроенные функции обработки массивов. Сортировка и поиск в массиве Задачи Одномерный массив. Задачи на ввод-вывод. Двумерный массив Символьные типы данных Символьные буквальные константы Объявление символьных данных Задание длины символьного объекта. Символьные именованные константы. Объявление символьного массива Инициализация символьных переменных Автоматические строки Выделение подстроки Символьные выражения. Операция конкатенации Присваивание символьных данных Символьные переменные как внутренние файлы Встроенные функции обработки символьных данных Выделение слов из строки текста Задачи Разработка пользовательской процедуры. Поиск строки, удовлетворяющей заданному условию. Работа с тремя текстовыми файлами Производные типы данных Объявление данных производного типа Инициализация и присваивание записей Ввод-вывод записей Пример работы с данными производного типа Применение структур при работе с наборами данных Постановка задачи. Внутреннее представление данных. Исходный код обработки данных. Создание тестовых наборов данных. Обсуждение рассмотренной задачи Структуры со ссылками на себя Выражения производного типа Задаваемые присваивания записей Запись как параметр процедуры Запись как результат функции Задачи Передача записей в неформатные и двоичные файлы. Структуры при работе с файлами прямого доступа Простые вычисления Поиск корня функции y = f(x) Поиск локального экстремума функции нескольких переменных Вычисление площади фигуры Сканирование охватывающего прямоугольника. Метод Монте-Карло. Площадь произвольного многоугольника Численное интегрирование с заданной точностью Задачи Простые построения Построение графика функции y = f(x) Перемещение образа по заданной траектории Построение составной кубической кривой Графический вывод поверхности y = f(x,y) Изометрическое проецирование. Вывод каркасной модели поверхности. Удаление невидимых граней. Закраска трехмерного объекта Полный текст программы вывода параболоида Задачи Сортировка и поиск данных Сортировка Понятие внутренней и внешней сортировки. Понятие ключа. Таблица указателей. Сортировка методом пузырька. Быстрая сортировка Поиск данных Последовательный поиск. Бинарный поиск. Сравнение последовательного и бинарного поиска Управляющие операторы и конструкции Оператор GOTO безусловного перехода Оператор и конструкции IF Условный логический оператор IF. Конструкция IF THEN ENDIF. Конструкция IF THEN ELSE ENDIF. Конструкция IF THEN ELSE IF Конструкция SELECT CASE DO-циклы. Операторы EXIT и CYCLE Возможные замены циклов Оператор STOP Программные компоненты Внешние процедуры Внутренние процедуры Операторы заголовка процедур Общие характеристики операторов заголовка процедур. Результирующая переменная функции Параметры процедур Соответствие фактических и формальных параметров. Вид связи параметра. Явные и неявные интерфейсы. Ключевые и необязательные параметры Модули Организация модулей. Оператор USE. Атрибуты PUBLIC и PRIVATE Перегрузка и родовые интерфейсы Перегрузка процедур. Перегрузка операций и присваивания. Общий вид оператора INTERFACE Ассоциирование имен Область видимости именованного объекта Область видимости меток Атрибут AUTOMATIC Атрибут SAVE Форматный ввод-вывод Преобразование данных. Оператор FORMAT Программирование спецификации формата Выражения в дескрипторе преобразований Задание формата в операторах ввода-вывода Списки ввода-вывода Элементы списков ввода-вывода. Циклические списки ввода-вывода. Пример организации вывода Согласование списка ввода-вывода и спецификации формата. Коэффициент повторения. Реверсия формата Дескрипторы данных Дескрипторы управления Управляемый списком ввод-вывод Управляемый именованным списком ввод-вывод. Управляемый неименованным списком ввод-вывод Встроенные и дополнительные процедуры Виды встроенных процедур Обращение с ключевыми словами Родовые и специфические имена Возвращаемое функцией значение Используемые обозначения Элементные функции преобразования типов данных Элементные числовые функции Вычисление максимума и минимума Математические элементные функции Функции для работы с массивами Справочные функции для любых типов Модели данных целого и вещественного типа Числовые справочные функции Элементные функции получения данных о компонентах модельного представления вещественных чисел Преобразования для параметра разновидности Процедуры для работы с битами Пример использования битовых функций Символьные функции Процедуры для работы с памятью Проверка состояния “конец файла” Неэлементные подпрограммы даты и времени Случайные числа Специфические имена, которые допускаются в качестве фактических параметров Специфические имена, не допускаемые в качестве фактических параметров Дополнительные процедуры FPS Запуск программ. Управление программой. Работа с системой, дисками и директориями. Управление файлами. Генерация случайных чисел. Управление датой и временем. Ввод с клавиатуры и генерация звука. Обработка ошибок. Аргументы в командной строке. Сортировка и поиск в массиве. Управление операциями с плавающей точкой Литература
|