72636

ПОДПРОГРАММЫ-ФУНКЦИИ

Доклад

Информатика, кибернетика и программирование

С использованием функции RRMX непосредственно возвращающей значение максимального элемента массива и с помощью функции NUMX возвращающей номер максимального элемента массива. Так в приведенном ниже примере имя функции NUMX типизировано как целое по умолчанию а для функции RRMX необходима явная типизация.

Русский

2014-11-26

13.95 KB

0 чел.

ПОДПРОГРАММЫ-ФУНКЦИИ.

Программа SOMAX печатает максимальные значения массивов A, B и C двумя способами. С использованием функции ARRMAX, непосредственно возвращающей значение максимального элемента массива, и с помощью функции NUMAX, возвращающей номер максимального элемента массива.

Подпрограмма-функция начинается с ключевого слова FUNCTION, после которого указывается ее имя и, в круглых скобках, список формальных параметров. Завершается подпрограмма-функци, как и все програамные единицы, оператором END.

Подпрограмма-функция является типизированным объектом. Тип функции определяется типом ее имени. Если имя необходимо явно типизировать, то тип указывается перед FUNCTION. Имя функции должно быть так же типизировано в использующей ее программной единице. Так, в приведенном ниже примере, имя функции NUMAX типизировано как целое, по умолчанию, а для функции ARRMAX необходима явная типизация.

     program SOMAX

     integer A(2), B(3), C(4), ARRMAX

     data A /1, 2/ B/4, 5, 3/ C/ 7, 6, 9, 8/

     print'(3(1x,i1)/)', ARRMAX(A,2), ARRMAX(B,3), ARRMAX(C,4)

     print'(3(1x,i1)/)', A(NUMAX(A,2)), B(NUMAX(B,3)), C(NUMAX(C,4))

     end

 

     integer function ARRMAX(X,N)

     integer X(N)

     ARRMAX = X(1)

     if(N .eq. 1) return

     do i=1, N

       if( X(i) .gt. ARRMAX ) ARRMAX = X(i)

     end do

     return

     end

     function NUMAX(X,N)

     integer X(N)

     NUMAX = 1

     if(N .eq. 1) return

     do i= 2, N

       if( X(i) .gt. X(NUMAX) ) NUMAX = i

     end do

     return

     end

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

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

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

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


 

А также другие работы, которые могут Вас заинтересовать

15639. Психологические закономерности формирования орфографической грамотности 91.5 KB
  Г.Г. Граник Психологические закономерности формирования орфографической грамотности Среди многих проблем встающих при обучении русскому языку одной из главных и нерешенных остается проблема формирования грамотной письменной речи. Низкий уровень орфографическо
15640. КЛАССОВАЯ СЕМАНТИКА КАК ТЕОРИЯ РЕВОЛЮЦИОННОГО ИСКУССТВА 207 KB
  КЛАССОВАЯ СЕМАНТИКА КАК ТЕОРИЯ РЕВОЛЮЦИОННОГО ИСКУССТВА Н. БЕРКОВСКИЙ Статьи Н.Я. Берковского о советской литературе известны сравнительно мало. Между тем они были заметным и ярким явлением в разнообразной критике 20х годов. Он писал из вплоть до 1930 года но потом ...
15641. ЭСТЕТИЧЕСКИЕ ВЗГЛЯДЫ А.К. ВОРОНСКОГО 211.5 KB
  ЭСТЕТИЧЕСКИЕ ВЗГЛЯДЫ А.К. ВОРОНСКОГО В автобиографической книге За живой и мертвой водой Александр Константинович Воронский с мягким юмором рассказал о начале своей литературной работы. Фельетон написанный голодным подпольщиком 1911 неожиданная удача напечатали...
15642. КРИТИКА В КОНТЕКСТЕ ЭСТЕТИКИ (О ДЕЯТЕЛЬНОСТИ И ТВОРЧЕСТВЕ А. ЛЕЖНЕВА) 226.5 KB
  КРИТИКА В КОНТЕКСТЕ ЭСТЕТИКИ О ДЕЯТЕЛЬНОСТИ И ТВОРЧЕСТВЕ А. ЛЕЖНЕВА В начале 20х годов когда жизнь многих людей меняла свой ход никого не могло удивить появление из безвестности нового литературного имени А. Лежнева. Никто не знал что Абрам Захарович Горелик А. Л...
15643. Энвайронементализм (экологическое направление) 185 KB
  Лекция 22. Энвайронементализм экологическое направление 1. Географический подход в археологии. Этногеография дала импульс не только диффузионизму в археологии но и упору на географический фактор хотя географический детерминизм имеет и более
15644. Инвазионизм и библейская археология 220.5 KB
  Лекция 23. Инвазионизм и библейская археология 1. Миграционизм как инвазионизм. Миграция вообще предстает в исходном пункте как эмиграция в конечном как иммиграция а если в новую страну передвинулся целый народ или армия то такая иммиграция описывается как вторж...
15645. Комбинационизм в археологии 279.5 KB
  Лекция 26. Комбинационизм. Незамеченное течение. В трансмиссионизме постепенно всё большее место занимала констатация не самих заимствований а их воздействия на остальную культуру на местные ее элементы причем в воспринимающих очагах под воздейст...
15646. Эмпирические школы в археологии 480.5 KB
  24 Лекция 31. Эмпирические школы. 1. Введение. В археологической литературе иногда встречаются указания на эмпирическую школу но всякий раз оказывается что под этим названием фигурируют разные группы ученых разного времени и в разных странах. То ест
15647. Автономная археология в историческом синтезе и эмергентизм 424 KB
  Лекция 33. Автономная археология в историческом синтезе и эмергентизм 1. На руинах археологии обитания. В 1947 г. на конференции в Гамбурге собравшимся немецким археологам было сказано: Сегодня наша преистория прежде всего стоит перед задачей привести в порядок сп