Научная литература
booksshare.net -> Добавить материал -> Математика -> Боглаев Ю.П. -> "Вычислительная математика и программирование " -> 30

Вычислительная математика и программирование - Боглаев Ю.П.

Боглаев Ю.П. Вычислительная математика и программирование — Высшая школа, 1990. — 546 c.
ISBN 5-06-00623-9
Скачать (прямая ссылка): vychmatiprog1990.djvu
Предыдущая << 1 .. 24 25 26 27 28 29 < 30 > 31 32 33 34 35 36 .. 168 >> Следующая

Выражения отношения имеют вид
W1DW2
где Wl, W2—арифметические выражения, ?—знак операции отношения—один из следующих:
79
.LT. меньше <
.LE. меньше или равно <
.EQ. равно =
.NE. не равно Ф .GT. больше >
.GE. больше или равно ^
Примеры.
1. 3>4. Запись на фортране 3.GT.4.
2. (A + B)<(G+D).. Запись на фортране (A+B).LT.(C + D). Значением выражения отношения может быть либо «истина» —
.TRUE., либо «ложь» .FALSE..
В примере 1—.FALSE., в примере 2—зависит от входящих параметров. Л
Логическая переменная — величина, принимающая в процессе вычислений дв$ значения: .TRUE, либо FALSE.
Логические ‘выражения имеют вид
Z1AZ2AZ3...
Здесь ZI, Z2, Z3, ...—логические элементы: переменные, константы, выражения отношения, А—знак логической операции.
Логические операции
Знак операции А Пример Значение операции
.AND. A.AND.B Выражение истинно, когда А и В
истинны
.OR. A.OR.B Выражение истинно, когда истинно либо А, либо В, либо они оба
.NOT. .NOT.A Выражение истинно, когда ложно
А
Примеры логических выражений:
1.A.AND.B.OR.C
2.X.LT.Y.AND.Y.LT.Z *
Логическое выражение в примере 2 истинно, если переменная Y принадлежит интервалу X<Y<Z.
Логическое выражение
A.GT. 1.0. AND..NOT.C.EQ.D.OR.B.LT.C
иллюстрирует две особенности. Во-первых, две логические операции не могут стоять в выражении рядом, кроме случая, когда вторая операция .NOT.. Во-вторых, в логическом выражении имеется неоднозначность. Приведенное выражение может означать
A.GT. 1.0. AND..NOT.(C.EQ.D.OR.B.LT.C)
а может
(A.GT. 1.0. AND..NOT.C.EQ.D).OR.B.LT.C 80 \
V
Такую неоднозначность можно устранить применяя скобки, так же как и в арифметических выражениях. Когда неоднозначность не устраняется скобками, выражения отношения и логические операции выполняются в порядке старшинства. В порядке убывания старшинства (вместе с арифметическими операциями) эта последовательность имеет вид возведение в степень умножение, деление сложение, вычитание выражения отношения .NOT.
.AND.
.OR.
С учетом этой иерархии приведенное выше логическое выражение означает второй вариант расстановки скобок Логический оператор присваивания имеет вид
Q=R,
где Q—логическая переменная, R—логическое выражение. Условный логический оператор IF. Вид этого оператора
IF (R) S
Здесь R—логическое выражение, S—выполняемый оператор, кроме двух операторов: DO и IF. Если R истинно, то выполняется оператор S, если R ложно, то выполняется следующий за IF оператор.
Примеры.
1. Вычисление функции в точке л:
Y=F(X)=<
— jc+2,1, х<—2,
l+2x3, — 2^х^2,
лг+3,5, х>2
с помощью логического IF запрограммировано в следующем фрагменте:
IF (X.LT.( —2)) GO ТО 2 IF (X.LE.2) GO TO 1 Y = X + 3.5 GO TO 3
1 Y = l. + 2.*X**3 GO TO 3
2 Y = (—X) + 2.1
3 CONTINUE
2. Выход на печать при достижении заданной точности и засылка XI в ХО, если точность не достигнута. Текущая точность Е1, заданная Е.
81
IF (El.LE.E) GO TO 10 X0 = X1
10 WRITE (6,11)X1
11 FORMAT (E13.6)
3. Определение максимального элемента матрицы W(l, J), U/, J^\0:
AMAX = W(l,l)
DO 5 1=1,10 DO 5 J=l,10
IF (W (I, J).GT. AM AX) AMAX = W(I,J)
5 CONTINUE
3.2.10. Функция-формула, функция-подпрограмма, подпрограмма.
Если в программе необходимо несколько раз вычислять значение функции, которой нет среди библиотечных, и эта функция может быть определена одним арифметическим выражением, то можно использовать конструкцию фортрана, которая называется функция-формула. .
1. Функция-формула определяется арифметическим выражением в начале программы до первого выполняемого оператора
F(P1,P2,...,PK) = W
где F — индентификатор (имя функции), Р1,...,РК — идентификаторы формальных аргументов, W—арифметическое выражение—последовательность операций над аргументами.
После определения функцией-формулой пользуются так же, как и библиотечной функцией.
Аргументы в обращении к функции называются фактическими параметрами. Количество, последовательность и тип формальных и фактических параметров должны совпадать. Фактические параметры могут быть константами, переменными, функциями, арифметическими выражениями.
Тип данных функции-формулы определяется явным образом в операторе описания типа (либо неявным образом по первой букве идентификаторов).
Примеры.
Определения: ANORMA(X,Y,Z) = SQRT(X**2 + Y**2 + Z**2)
F(X) = -1. + X**2+X+0.01 *SIN(X)
Обращения: Y = ANORMA(2.,COS(B),0.3) +1.
Z = F(X0)
При появлении в программе имени функции-формулы выполняется подстановка фактических параметров на место соответствующих им формальных в определении функции-формулы. После этого вычисляется арифметическое выражение, определяющее функцию, а затем результат используется для вычисления выражения, содержащего обращение к функции.
82
Перед обращением к функции-формуле всем фактическим параметрам должны быть уже присвоены значения.
Обращение к функции-формуле может быть только в той программной единице (это понятие вводится в этом разделе ниже), где она определена.
2. Функция-подпрограмма применяется тогда, когда вычисление значения функции не сводится к одному арифметическому выражению. Определяется функция-подпрограмма следующим образом:
Предыдущая << 1 .. 24 25 26 27 28 29 < 30 > 31 32 33 34 35 36 .. 168 >> Следующая

Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

Есть, чем поделиться? Отправьте
материал
нам
Авторские права © 2009 BooksShare.
Все права защищены.
Rambler's Top100

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed