Инфа теор вопр



1. Базовые элементы Фортрана: алфавит языка, идентификаторы, метки, классы операций, выражения (арифметические, логические) . Правила записи и вычисления выражений в Фортране.

Алфавит языка :

1. Прописные или строчные буквы латинского алфавита от А до Z.

2. Цифры от 0 до 9.

3. Специальные символы: пробел, ( левая скобка, . точка, , запятая, ‘ апостроф, : двоеточие, ) правая скобка, разделитель между операторами ; .

4. Знаки операторов: + плюс, — минус, / косая черта, * звездочка, = знак равенства.

Буквы русского алфавита и другие символы могут использоваться только в комментариях Фортран-программы.

Идентификатор (имя переменной) – совокупность букв или цифр, начинающихся с букв, может содержать подчеркивание (максимум – 31 символ). Метки используются для обозначения операторов, что позволяет ссылаться на них в других операторах программы.

Классы операций:

ПРИОРИТЕТ

ОПЕРАТОР

FORTRAN

ПРИМЕРЫ

1

квадрат

**

X=X**2

2

умножение

*

Xi=X*i

деление

/

a/b

3

сложение

+

A+B

вычитание

A-C

1. Арифметические

Используются в арифметических выражениях. Арифметические операнды – арифметические константы, простые переменные, имя функции.

операции

обозначение

FORTRAN

Меньше

<

LT

<

Не меньше

<

LE

<=

Равно

=

EQ

==

Не равно

NE

/=

Не больше

>

GE

>=

Больше

>

GT

>

2.Операции отношений

Вещественные переменные нельзя проверять на равенства

3. Логические операции

операция

обозначение

Fortran

Отрицание

не

.not.

Логическое умножение

и

.and.

Логическое сложение

или

.or.

Логическими переменными могут быть логические константы, переменные, функции, условия и простые отношения. Все логические операнды принимают значения: либо истина (true) , либо ложь (false).

Правила записи и вычисления выражений:

А) арифметических:1. Все символы пишутся в строчку на одном уровне. Проставляются все знаки операций (нельзя пропускать ∗).2. Не допускаются два следующих подряд знака операций. (Нельзя A + – B; можно A + (–B).)3. Операции с более высоким приоритетом (рангом) выполняются раньше операций с меньшим приоритетом. 4. Вычисление функции имеет более высокий ранг, чем арифметические операции. Аргумент функции – выражение, стоящее в круглых скобках после имени функции.5. Операции одного ранга выполняются слева направо (возведение в степень – справа налево).6. Часть выражения, заключенная в скобки, вычисляется в первую очередь. (Например, (A+B)*(C–D) — умножение производится после сложения и вычитания.)Не следует записывать выражений, не имеющих математического смысла :деления на нуль; возведения нулевого значения в отрицательную или нулевую степень; возведения отрицательного операнда в нецелочисленную степень. При переносе длинного выражения на следующую строку нельзя повторять знак операции. 

(a+b)/(c*d)

Б) логических:

Логическое выражение состоит из операндов логического типа, связанных логическими операциями и круглыми скобками. Результатом его вычисления является логическое значение .TRUE. или .FALSE. Операндами могут быть логические константы, переменные, функции, выражения отношения. Приоритет логических операций ниже, чем операций отношений. В свою очередь у логических операций имеется своя иерархия рангов. Стоящие подряд в выражении операции отношения и логические операции одинакового старшинства выполняются слева направо.

Пример: Математическому неравенству 1≤ x ≤ 7 соответствует следующее логическое выражение: (1<= x).and.(x<=7).

2. Допустимые типы данных в Фортране. Запись констант, описание переменных, спецификации в Фортране.

Фортран может оперировать со следующими встроенными типами данных:

INTEGER (целые числа);

REAL (вещественные числа);

DOUBLE PRECISION (вещественные числа двойной точности);

COMPLEX (комплексные числа);

CHARACTER (текстовые символы и строки);

LOGICAL (ИСТИНА и ЛОЖЬ).

Константа – величина, которая не изменяется в программе.

Типы констант:

А) Целые- простые числа любого знака: -123 I4

Б) Вещественного типа :

С ФИКСИРОВАННОЙ ТОЧКОЙ : (-0,125; 1,7) сначала записывается знак числа – или + , целая часть числа, затем точка и дробная часть. Записывается в памяти приближенно с точностью до 7-ого знака. Если точка показана явно, то учитывается она, а не вторая цифра.

С ПЛАВАЮЩЕЙ ТОЧКОЙ: Сначала указывается знак числа, число, показатель степени Е , константа со знаком или без.

В) Комплексный тип: представляет собой два вещественных числа, заключенных в скобки и разделенных запятой. Первая часть представляет действительную, а вторая – мнимую часть комплексного числа. (1.,.1) = 1.+0.1

Г) Логические: записываются в виде .true. или .false.

Д) Удвоенной точности: такой же вид, как и у вещественных констант, только содержат показатель степени D. Точность в два раза выше.

Е) Текстовые: 1) старая форма nH строка, где n-числовой символ в строке, Н – признак константы

2) новая форма ‘строка’

Переменнаявеличина, принимающая различные значения.

Если имя переменной начинается на I,J,K,L, M, N, то это переменная целого типа, остальные считаются вещественного типа.

Тип переменной задается с помощью операторов:

1) Real – описывает переменные и массивы вещественного типа

2) Integer — описывает переменные и массивы целого типа

3) Complex – комплексного типа

4) Character – текстового типа

5) Logical – логического типа

6) Double precision – удвоенной точности

Спецификации в ФОРТРАНЕ:

1) основные

описание

обозначение

FORTRAN

формат

пример

1

целый

XXXi

Integer

In

-16 I3

125 I3

2

вещественный

А) с фиксированной точкой

real

Fn.m

n>=m

-0,5 F4.(1-не играет роли)

.5 F2.1

Б) с плавающей точкой

En.m

0,314E1 E7.3

3

Вещественный с двойной точностью (до 17 значащих чисел в дробной ч.ч.)

X.XXD XX

Double precision

Dn.m

2.7D1 D5.1

4

Логический

.true.

.false.

logical

Ln

5

Текстовый (символьный)

‘текст’

character

An

2) служебные (осуществляют удобный ввод или вывод)

Пропуск n позиций

nX

Переход к служебной записи

/

Вывод текста

‘текст’

24. Формальные и фактические параметры при использовании подпрограмм. Правила их соответствия.

При описании подпрограмм и вызова их используются понятия формальных и фактических параметров.

Формальные параметры — это переменные, фиктивно (формально) присутствующие в процедуре и определяющие тип и место подстановки фактических параметров.

Фактические параметры это реальные объекты программы, заменяющие в теле процедуры при ее вызове формальные параметр

Формальные параметры подпрограммы указывают, с какими параметрами следует обращаться к этой подпрограмме (количество параметров, их последовательность, типы). Они задаются в заголовке подпрограммы в виде списка формальных параметров, разбитого на группы, разделенные точками с запятыми. В группу формальных параметров включаются однотипные параметры одной категории.

Правила соответствия формальных и фактических параметров:

Должны соответствовать по типу, количеству, порядку следования

В качестве формальных параметров может выступать: простые переменные, переменные с индексом, имя массива, имя функции

В качестве фактических параметров может выступать: const, выражения, простые переменные, переменные с индексом, имя массива, имя функции

Должно соблюдаться следующее соответствие

формальные параметры

фактические параметры

простые переменные

const, ПП, переменные с индексом

массив

массив, переменная с индеском

имя функции

имя функции

5) Как правило, формальные параметры вызываются по значению, то есть время выполнения процедуры под формальный параметр выделяется ячейка, в которой помещается значение фактического параметра. При выполнение оператора END (RETURN) производятся обратные действия, значение формального параметра записываются в ячейку, отведенную под фактический параметр

6) В некоторых случаях формальные параметры вызываются по наименованию, тогда формальный параметр заключается в скобки / / и при этом, при вызове, записывается адрес фактического параметра

7) Все формальные параметры — массивы, вызываются по наименованию (имя массива не надо заключать в скобки). Благодаря этому, формальные параметры массивы можно отписывать с неопределенными границами, так как под него не отводится память

8) Количество и границы измерений массива формального и фактического параметра (аргумента) могут не совпадать, но размер массива аргумента не должен быть меньше размера формального параметра

9) Если массив — формальный параметр определен в подпрограмме с изменяющимися границами (границы представлены переменной), то эти границы должны быть представлены либо формльными параметрами, либо определены через общую область и при обращении к подпрограмме их фактического значения не должны превышать действительные значения границы аргумента.

10) Формальные параметры не могут встречаться в операторе common

В fortrane 90 допускается рекурсивное обращение к процедуре, то есть обращение к самой себе прямо или косвенно.

20. Вспомогательные алгоритмы (подпрограммы). Преимущества их использования. Виды подпрограмм в фортране. Структура многомодульной программы.

Вспомогательные алгоритмы используются внутри других алгоритмов. В виде вспомогательных алгоритмов имеет смысл оформлять:

Алгоритмы, реализующие те или иные численные методы, использующиеся при решении широкого круга задач

Алгоритмы, наиболее употребительные в той или иной сфере

Повторные части программы, используемые с различными исходными данными

+ Аппарат ВА позволяет составить алгоритмодин раз, а использовать сколько необходимо.

В общем случае программа может состоять из нескольких программных модулей, которые заканчиваются end. Один из них основной (головной, главный). С него начинается выполнение программы, а остальные — подпрограммы того или иного вида. В общем случае главный модуль или первый, или последний. Каждый программный модуль в Fortran’е можно оттранслировать или отладить независимо друг от друга, поэтому переменные в каждом программном модуле локальные. В связи с этим одни и те же имена переменных могут использоваться в разных модулях , а будут выделены разные ячейки памяти.

В Фортране существуют подпрограммы двух типов: function (функция) и subroutine (процедура)



Страницы: Первая | 1 | 2 | 3 | ... | Вперед → | Последняя | Весь текст




sitemap
sitemap