Программная компонента функция

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

Структура функции имеет следующий вид:

FUNCTION < имя функции>([< форм.арг >])

< объявление форм.арг >

< объявление локальных объектов >

...

< вычисляемые операторы, присваивание результата >

END [ FUNCTION [ < имя функции > ] ]

Пример:

function Sum_(a,b)

real a,b,Sum_

Sum_=a+b

return

end

s=Sum_(1.,3.)

Функции бывают внешние и внутренние.

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

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

Внутренние процедуры-функции не могут содержать других внутренних процедур.

Вызов функции осуществляется путем указания ее имени в вызывающей ее программной компоненте.

Пусть требуется вычислить выражение , где , , .

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

Program bezfunc

Real, parameter:: pi=3.1415926

Real x, dx, s, fp, fm, f0

X=pi/8

Dx=0.01

F0=(sin(x)+cos(x))/(x+exp(x))! вычисление f(x)

Fp=(sin(x+dx)+cos(x+dx))/(x+dx+exp(x+dx))! вычисление f(x+dx)

Fm=(sin(x-dx)+cos(x-dx))/(x-dx+exp(x-dx))! вычисление f(x-dx)

S=fp/fm+f0

Write(*,’(a, f5.2)’), ‘s=’, s

end


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: