- •1. Базовые элементы Фортрана: алфавит языка, идентификаторы, метки, классы операций, выражения (арифметические, логические) . Правила записи и вычисления выражений в Фортране.
- •2. Допустимые типы данных в Фортране. Запись констант, описание переменных, спецификации в Фортране.
- •24. Формальные и фактические параметры при использовании подпрограмм. Правила их соответствия.
- •20. Вспомогательные алгоритмы (подпрограммы). Преимущества их использования. Виды подпрограмм в фортране. Структура многомодульной программы.
- •15. Использования метода флажка (булева признака) для структурирования алгоритма.
- •9. Цикл пока и до тех пор пока. Их отличительные особенности. Запись этих структур на языке блок-схем и моделирование на Фортране.
- •8. Цикл пока и пока с параметром. Их отличительные особенности. Запись этих структур на языке блок-схем и моделирование на Фортране.
- •5. Основные этапы подготовки и решения задач на эвм. Понятие алгоритма, его свойства.
- •26. Использование общей области в Фортране: назначение общей области, правила размещения в ней переменных, существующие в Фортране ограничения при описании общих областей.
- •10. Дополнительные управляющие структуры. Их Запись на языке блок-схем и моделирование на Фортране.
- •6. Базовые управляющие структуры. Их назначение и использование. Представление базовых структур на языке блок-схем и их моделирование на Фортране.
- •3. Классификация величин, используемых при решении задач: по назначению, структуре, типу, форме представления. Полная спецификация задачи.
- •11. Детерминированный цикл. Его особенности. Использование управляющих структур при записи такого цикла.
- •12. Итерационный цикл. Его особенности. Использование управляющих структур при записи такого цикла.
- •13. Кратные циклы. Правила вложенности циклов и передача управления из цикла в цикл.
- •22. Вспомогательный алгоритм - функции. Оформление вспомогательного алгоритма и форма обращения к нему.
- •21. Подпрограммы общего типа - процедуры. Оформление вспомогательного алгоритма общего типа и форма обращения к нему.
- •19. Операторные функции и их использование. Оформление операторных функций и форма обращения к ней.
- •17. Операторы ввода/вывода в Фортране. Задание формата в операторах ввода/вывода. Правила использования спецификаций формата. Связь спецификации формата с элементами из списка ввода/вывода.
- •18. Использование встроенного цикла при вводе/выводе. Правила его записи и выполнения.
- •25. Особенности использования имени внешней функции в качестве фактического параметра.
- •23. Отличие внешней функции от операторной и от процедуры. Стандартные (встроенные) функции.
- •4. Способ задания значений переменным в Фортране. Правила преобразования типов. Оператор присваивания.
21. Подпрограммы общего типа - процедуры. Оформление вспомогательного алгоритма общего типа и форма обращения к нему.
Subroutine, процедура - подпрограмма более общего вида с любым количеством аргументов, в том числе и выходных
Описание процедуры subroutine:
subroutine имя (a1, а2, …а(n))
<описание>
{операторы}
end
a1, а2, …а(n) - формальные параметры, то есть условные имена входных и выходных данных (входные и выходные данные)
Через заголовок процедуры осуществляется передача переменных из модуля в модуль.
Обращение к процедуре
call имя (Q1, Q2, … Q(n))
Q1, Q2, … Q(n) - фактические параметры
7. Понятие простой переменной и массива. Особенности их представления в ЭВМ. Объявление массива, обращение к его элементу. Возможности использования массивов с переменными границами (в головном модуле, в подпрограмме). Организация ввода/вывода массивов.
Переменная – это величина, которая может принимать различные значения.
Переменные различаются по именам. Имя переменной (идентификатор) может содержать 1320 символов, но машина будет читать только первые 6 символов. Причём первый символ – буква (желательно латинского алфавита). Следует избегать имен (идентификаторов), совпадающих с операторами языка, например REAL, READ, а так же с именами встроенных функций.
Массивы
Массив – совокупность однотипных элементов, объединенных под одним именем и расположенных в памяти машины подряд.
Массивы должны быть описаны в программе одним из операторов описания. Существует специальный оператор для описания массивов: DIMENSION (указывается имя, тип, размерность)
Пример:
DIMENSION A(10), C(3,4)
Оператор не выполняет никаких действий в программе и служит лишь только для отведения места в оперативной памяти ЭВМ для размещения массивов.
Чтобы обратиться к определённому элементу массива, необходимо указать его имя и индекс этого элемента. Индекс в одномерном массиве – это порядковый номер элемента массива, для двухмерного – номер строки и номер столбца. В качестве индекса может выступать константа целого типа, переменная целого типа или арифметическое выражение, желательно целого типа.
Ввод массивов (указывается имя, тип, размерность)
Предположим, что в программе описаны массивы:
DIMENSION A(10)
READ (5,*) ( A(I) , I = 1, 10 )
Достоинство: таким способом можно ввести весь массив целиком или часть этого массива, что весьма удобно использовать в программе, когда необходимо массив заполнить не полностью, а частично.
Недостаток: нет возможности задавать количество вводимых элементов (т.к. это количество указывается в программе как постоянная величина) и для того, чтобы можно было ввести любое количество необходимо делать изменения в программе.
Вывод массивов
Первый способ вывода массива:
WRITE(6,*) A
При бесформатном (упрощенном) выводе массива А на экран дисплея выведутся значения всех элементов массива, количество которых было описано в операторе DIMENSION. В каждой строке печатается по 5 чисел в виде:
-0.1234567Е-01
т.е. с точностью до 7 знаков после запятой.
Недостатки:
– выводятся все элементы массива и при большой размерности массива первые элементы выведутся на экран, но будут недоступными для просмотра, т.к. сдвинутся при выводе остальных элементов;
– при выводе массива не выводятся никакие пояснения (ни имени массива, ни порядкового номера элемента массива);
– при выводе нескольких массивов будет непонятно, где закончился первый и начался второй массив.
Достоинство: простота использования.
Второй способ вывода массива:
WRITE(6,*) (A(I),I=1,N) , где N – заданно ;
Достоинства:
– позволяет вывести только часть массива;
– количество выводимых элементов задаётся пользователем;
Недостатки:
– нет никаких пояснений к выводимым числам (имя массива и порядковый номер);
– элементы выводятся на экран по 5 чисел в каждую строку..
Третий способ вывода массива:
WRITE(6,*) (‘A(’,I,’)=’,A(I),I=1,N)
Здесь используется неявный цикл типа DO, по которому происходит вывод имени массива с помощью текстовой константы, а за ним в скобках указывается номер выведенного элемента и через знак ‘=’ само численное значение элемента массива:
А(…1)=число А(…2)=число и т.д.
