Pagina anteriorIndiceProxima pagina

Algoritmos Computacionais

Capítulo 9 

Procedimentos e Funções

9.1 Forma geral

Procedure  Nome (<lista de parâmetros>);
  <declarações locais>
Begin
  <corpo do procedimento>
End;

Function   Nome  (<lista de parâmetros>): <tipo>;
  <declarações locais>
Begin
  <corpo da função>
End;

  • Subprogramas têm estrutura semelhante a um programa;
  • Nas funções o retorno de um valor é feito através de uma atribuição ao nome da função dentro do corpo desta.

Ex.: 

 
Program  Testmult; {com procedure}
 Var
  X,Y,U,Z: Integer;
 
Procedure  MULT; {procedimento sem parâmetros}
 Begin
  Z:= 0;
  U:= X;
  Repeat
       Z:= Z + 1;
       U:= U - 1;
  Until  U = 0;
 End; { de mult }
 
Begin
     X:= 20;
     Y:= 210;
     MULT;
     X:= 15;
     Y:= 196;
     MULT;
 End. { de Testmult }

 
Program  Testmult; {com function}
 Var
  W,X,Y,U,Z: Integer;
 
Function   MULT: Integer;
 Begin
    Z:= 0;
    U:= X;
    Repeat
         Z:= Z + 1;
         U:= U - 1;
     Until  U = 0;
    MULT:= Z;
 End; { de mult }
Begin
   X:= 18;
   y:= 25;
   w:= MULT - 3;
End. { de Testmult }

Os parâmetros são declarados logo após o nome do procedimento ou função, dando também o tipo de cada parâmetro.
 Duas formas:

  •  passagem por valor
  • passagem por referencia -> denotado pela palavra Var antes do parâmetro.
    Procedure  MULT (X:Integer; Var Y:Integer);
    Neste caso X é passada por valor e Y, por referência.


Pagina anteriorIndiceProxima pagina

araujo@eng.uerj.br