- •Методические указания
- •Введение
- •1. Операционная система (ос)
- •1.1. Семейство операционных систем Windows
- •1.3 Магнитные диски
- •Раздел I. Контрольная работа (части I и II). Лабораторная работа №1
- •1.1. Общие сведения о языке Фортран. Этапы обработки программ
- •1.1.2 Основные символы и ключевые слова фортраНа
- •1.1.4 Типы данных в фортраНе
- •1.1.3 Основные элементы фортраНа
- •1.1.5 Арифметические выражения и операции
- •1.1.6 Операции над вещественными и целыми величинами
- •1.1.7 Возведение в вещественную степень ( )
- •1.1.8 Возведение в отрицательную степень
- •1.1.9 Корень квадратный
- •1.1.9.1 Таблицы с примерами записей выражений на Фортране:
- •1.1.9.2 Операции отношения
- •1.1.9.3 Логические значения
- •1.1.10 Тригонометрические функции
- •1.1.11 Обратные тригонометрические функции
- •1.1.12 Арифметический оператор присваивания
- •1.2 Запись программ на Фортране
- •1.2.1 Обработка программ на компьютере
- •1.2.2 Оператор бесформатного ввода read
- •Read(5,*) список
- •1.2.3 Операторы вывода
- •1.2.4 Отчет по лабораторной работе
- •1.2.5 Оператор parameter
- •1.2.6 Блок-схемы
- •1.2.7 Алгоритм выполнение практической работы
- •1.2.8 Консоль- проект
- •1.3 Задания к контрольной работе (часть 1)
- •1.3.1 Оператор format
- •Вывод по спецификации е12.5 Таблица №10
- •1.3.2 Задания к контрольной работе (часть 2)
- •1.3.3 Пример выполнения контрольной работы (часть1, 2)
- •Вопрос 1. (часть 1)
- •Вопрос 2.
- •Логическое выражение на фортране
- •Вопрос 3.
- •Вопрос 4. (часть 2.)
- •1.3.4 Задания к лабораторной работе № 1
- •1.3.5 Пример выполнения лабораторной работы № 1
- •1.3.6 Метки операторов
- •1.3.7 Форматный ввод
- •Раздел II. Лабораторная работа № 2
- •2.1. Алгоритмы
- •2.2 Рассмотрим пример составления схем алгоритмов.
- •2.3 Операторы передачи управления.
- •2.4 Вычисляемый оператор перехода
- •2.5 Условный арифметический оператор if:
- •2.6 Логический условный оператор if.
- •2.8 Задания к лабораторной работе № 2
- •Раздел III. Лабораторная работа № 3
- •3.1 Циклический алгоритм
- •3.2 Вспомогательные операторы управления
- •3.3 Оператор паузы
- •3.4 Массивы. Общие сведения о массивах
- •3.5 Оператор dimension
- •3.6 Индексные выражения
- •3.7 Ввод – вывод одномерных массивов (в/в)
- •3.8 Оператор цикла do
- •3.9 Задания к лабораторной работе № 3
- •3.10 Пример выполнения задания лабораторной работы № 3
- •Раздел IV. Лабораторная работа № 4
- •4.1 Дополнение к оператору цикла do
- •4.2 Двумерные массивы
- •4.2.1 Вод/вывод елементов матрицы
- •4.3 Вложенные циклы
- •4.4 Задания к лабораторной работе № 4
- •4.5 Пример выполнения задания лабораторной работы № 4
- •Раздел V. Лабораторная работа № 5
- •5.1. Программные единицы
- •5.2. Оператор function
- •5.3 Другие операторы, входящие в подпрограммную–функцию
- •5.4. Обращение к подпрограмме – функции
- •5.5 Примеры решения заданий к лабораторной работе № 5
- •5.6 Задания на тему: составление подпрограмм типа function .
- •Раздел VI. Лабораторная работа № 6
- •6.1 Подпрограммы типа subr0utine
- •6.2 Правила установления соответствия между формальными и фактическими аргументами при обращении к подпрограммам
- •6.3 Примеры выполнения задания к лабораторной работе № 6
- •6.4 Задания на тему: составление подпрограмм типа subr0utine.
- •Рекомендуемая литература
- •Раздел 5.6 ; задание 2)
- •Раздел 6.4 ; задание 1)
- •Раздел 6.4 ; задание 2)
- •Раздел 6.4 ; задание 3)
- •Раздел 5.6 ; задание 2)
- •Введение…………………………………………............………………..…….……......3
- •1. Операционная система (ос)…………..………..………….…………..………..…...3
- •Раздел I. Контрольная работа (части I II). Лабораторная работа №1…………......5
- •Раздел II. Лабораторная работа № 2..……………..…………………………….....33
- •Раздел III. Лабораторная работа № 3 ………………………………………........40
- •Раздел IV. Лабораторная работа № 4 …………………………………………......48
- •Раздел V. Лабораторная работа № 5………………………………..………........52
- •Раздел VI. Лабораторная работа № 6……………………………..…………..…..58
Раздел VI. Лабораторная работа № 6
6.1 Подпрограммы типа subr0utine
Подпрограммы типа SUBR0UTINE во многих отношениях похожи на подпрограммы типа FUNCTI0N: в обеих может присутствовать инструкция RETURN; одинаковы правила использования формальных аргументов, которые могут быть как переменными, так и массивами; оба типа подпрограмм имеют одинаково формируемые наименования. Так же, как и подпрограммы типа FUNCTION, подпрограмма типа SUBR0UTINE полностью независимы от основной программы; номера их инструкций и их переменные никак не связаны ни с другими подпрограммами (за исключением переменных, являющихся формальными аргументами), ни с основной программой. Но если подпрограмма типа FUNCTION имеет результатом одну или несколько отдельных величин, то результатом подпрограмма типа SUBROUTINE могут быть массивы чисел.
Подпрограммы типа FUNCTION вызываются в основную программу указанием наименования подпрограммы. Для вызова подпрограмм типа SUBR0UTINE из головного (либо другого) программного модуля необходима специальная инструкция CALL. Эта инструкция состоит из ключевого слова CALL, наименования подпрограммы и заключенного в скобки списка ее аргументов. Примеры использования оператора CALL :
CALL SQR (X, N)
CALL MATAD (А, В, С, М, N)
Когда в программе встречается оператор CALL, то управление передается в подпрограмму типа SUBROUTINE (с соответствующим именем), и выполняются операторы этой подпрограммы. Оператор RETURN или END в подпрограмме возвращает управление в вызывающую программную единицу на оператор, следующий непосредственно за оператором CALL.
Первой инструкцией подпрограммы типа SUBROUTINE, инструкцией ее определения, обязательно является строка, состоящая из ключевого слова SUBROUTINE, наименования подпрограммы и списка ее аргументов. Последняя инструкция подпрограммы - END.
Примером простейшей подпрограммы типа SUBROUTINE может быть приведенная ниже подпрограмма копирования COPIE, переписывающая группы чисел из одного массива в другой:
SUBROUTINE COPIE (А, В, N)
DIMENSION А(1000), В(1000)
D0 1 I = 1, N
1 В (I) = A (I)
2 RETURN
END
Подпрограмма COPIE рассчитана на работу с массивами, длина которых не превосходит 1000 элементов. Обращение к этой подпрограмме из программного модуля головной программы осуществляется инструкцией CALL COPIЕ (OLD, NEW, К), по которой формальная индексированная переменная А подпрограммы SUBROUTINE COPIE заменяется фактической индексированной переменной 0LD, формальный аргумент массив В - фактическим наименованием NEW, формальная переменная N - фактической переменной К. Результатом работы подпрограммы является массив NEW, он указан одним из аргументов в инструкции обращения CALL к подпрограмме-SUBROUTINE. Подпрограммы типа SUBR0UTINE могут содержать внутри себя инструкции CALL, вызывающие другие подпрограммы SUBROUTINE и любые другие инструкции, в которых может содержаться обращение к подпрограммам типа FUNCTION, арифметическим или библиотечным подпрограммам.
Однако, подпрограмма не может содержать обращение к самой себе ни непосредственно, ни через серию других подпрограмм. Две подпрограммы не могут обращаться друг к другу. Это актуально и для подпрограмм типа- FUNCTION.
