C Описываем оператор-функцию

FOP(Z,T)=SQRT(Z*Z+T*T)

C Ввод исходных данных

WRITE(6,*)'Введите исходные данные'

READ(5,*) A,B,X,Y

D=FOP(A,B) Обращаемся к оператор-функции FOP. Фактические параметры А и В при обращении подставляются вместо формальных Z и T и с ними производится вычисление. Результат вычислений в виде вещественного числа возвращается на место обращения к оператор-функции и затем присваивается переменной D.

E=FOP(A,D)+FOP(D,B)*2.

F=FOP(A,3.5*FOP(E,D))

Q= FOP(F,FOP(SIN(X),COS(Y)))При первом обращении к оператор-функции фактическими параметрами являются выражения SIN(X) и COS(Y). При втором обращении фактическими параметрами будут F и результат первого обращения к оператор-функции.

WRITE(6,*)'D=',D,' E=',E,' F=',F,' Q=',Q

PAUSE

STOP

END

 

В строке F=FOP(A,3.5*FOP(E,D)) первое обращение к оператор-функции происходит для FOP(E,D), затем второе обращение для вычисления FOP(A,3.5*результатFOP(E,D)) и затем результат присваивается переменной F.

В данной задаче можно использовать оператор-функцию для вычисления

FOP(F,FOP(SIN(X),COS(Y))), но при реальном программировании в таком случае проще обойтись без оператор-функции Q=SQRT(F*F+SIN(X)**2+COS(Y)**2).

Можно, но нежелательно использовать имена формальных параметров оператор-функции внутри текста программы. При обращении к оператор-функции в ячейку с именем формального параметра (например, Z в предыдущем примере) будет помещено значение фактического параметра. При первом и втором обращении это будет переменная А. При третьем обращении переменная D. При четвертом обращении переменная Е. При пятом обращении переменная А. При шестом обращении SIN(X), а при седьмом переменная F. Если в промежутке между этими операциями мы будем использовать переменную Z (например, W=2.5*Z), то необходимо учитывать, что она может содержать разные значения в разных местах программы.

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

Оператор-функцию располагать только в начале программы. Если поставить ее в середине или другой части программы, транслятор может не найти ошибку, и результат работы программы будет непредсказуем.

 








Дата добавления: 2015-06-10; просмотров: 1079;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.008 сек.