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 следует признать более информативной, поскольку, зная номер максимального элемента и используя его в качестве индекса, можно получить значение максимального элемента массива.


 

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

83841. Трепанация черепа. Показания, техника выполнения, осложнения. Схема кранио-церебральной топографии Кренлейна 93.22 KB
  Локализация разрезов и костного дефекта определяется локализацией патологического процесса Показания: оперативный доступ при вмешательствах по поводу операбельных опухолей головного мозга мозговых грыж водянки мозга кисты мозга и пр Техника выполнения: 1. Осложнения: Кровотечение; Инфекция; Отек головного мозга; Повреждение мозга после чего может возникнуть: Изменения в памяти поведении мышлении речи; Проблемы со зрением; Проблемы с балансом; Проблемы кишечника и мочевого пузыря; Судороги; Паралич или слабость; Реакция...
83842. Первичная хирургическая обработка ран головы 48.42 KB
  При осмотре пациента с раной головы необходимо определить: 1 ее глубину 2 наличие в ране поврежденных артериальных сосудов 3 наличие или отсутствие повреждения костей свода черепа. Наличие или отсутствие костных повреждений необходимо уточнять не только при осмотре раны но и с использованием рентгенографии черепа и компьютерной томографии головы.
83843. Хирургическая анатомия лицевого и тройничного нерва. Разрез при гнойном паротите 50.26 KB
  Хирургическая анатомия лицевого нерва Лицевой нерв смешанный. Двигательная часть начинается от ядра лицевого нерва в Варолиевом мосту. У клеток двигательного ядра имеются многочисленные чувствительные коллатерали идущие из чувствительных ядер тройничного нерва.
83844. Кровеносные сосуды лица 50.02 KB
  Артерии Верхнечелюстная артерия является одной из двухконечных ветвей наружной сонной артерии. В первом отделе следующие ветви: 1 глубокая ушная артерия разветвляется в коже наружного слухового прохода в барабанной перепонке и в капсуле височно нижнечелюстного сустава; 2 передняя барабанная артерия проникает через каменисто барабанную щель к слизистой оболочке барабанной полости; 3 нижняя альвеолярная артерия вхожи в канал нижней челюсти и отдаёт ветви к зубам и десне нижней челюсти; её конечная ветвь подбородочная артерия...
83845. Клетчаточные пространства лица. Хирургическая тактика при флегмонах лица 52.56 KB
  выше линии соединяющей углы рта. VI Клетчаточные пространства под слизистой оболочкой мышцами и органами дна полости рта: Боковые клетчаточные пространства между языком и нижней челюстью В них окруженные клетчаткой располагаются подъязычные слюнные железы с большими выводными протоками. Гнойные процессы возникающие в межмышечных клетчаточных пространствах дна полости рта могут распространятся в пределах дна полости рта. Височноязычный промежуток сообщается с жировым телом щеки крылонебной ямкой а через круглое отверстие с полостью...
83846. Хирургическая тактика при флегмонах лица 54.42 KB
  Раскрытие и дренирование флегмон скуловой области. Раскрытие и дренирование флегмон височной области. В указанной области возможно возникновение поверхностной межапоневротической подапоневротической глубокой и разлитой флегмон. Поверхностная флегмона височной области образуется между кожей и собственной височной фасцией.
83847. Подчелюстная область, треугольник Пирогова. Перевязка язычной артерии, показания, техника выполнения 48.93 KB
  В пределах подчелюстной области залегают: подчелюстная слюнная железа лицевые артерия и вена подподбородочные артерия и вена подъязычный и челюстноподъязычный нервы лимфатические узлы и клетчатка окружающая эти образования. Последняя сообщается с клетчаткой подъязычной области крыловидночелюстного окологлоточного пространств боковой области лица и шеи. Подчелюстные лимфатические узлы являются регионарными узлами челюстнолицевой области полости рта. Треугольник Пирогова Треугольное пространство в боковой части надподъязычной...
83848. Коникотомия. Показания, техника выполнения, осложнения, их профилактика 116.46 KB
  Врач встав справа от больного указательным пальцем левой руки нащупывает бугорок перстневидного хряща и углубление между ним и нижним краем щитовидного хряща соответствующее расположению конической связки. Большим и средним пальцами левой руки фиксируют щитовидный хрящ натягивая кожу над хрящами гортани и смещая кзади грудиноключичнососцевидные мышцы с расположенными под ними шейными сосудистыми пучками второй палец находится между дугой перстневидного и нижним краем щитовидного хряща. Скальпелем проводят горизонтальный поперечный разрез...
83849. Трахеостомия. Верхняя и нижняя трахеостомия. Показания, техника операции. Осложнения и их профилактика 53.71 KB
  Трахеостомия это операция формирования искусственного наружного свища трахеи трахеостомы после вскрытия ее просвета. Рассечение стенки трахеи называется трахеотомией и она является этапом выполнения трахеостомии. Показания: Механическая асфиксия: инородные тела дыхательных путей при невозможности удалить их при прямой ларингоскопии и трахе обронхоскопии; нарушение проходимости дыхательных путей при ранениях и закрытых травмах гортани и трахеи; стенозы гортани: при инфекционных заболеваниях дифтерия грипп коклюш при...