Material TecProg Parte3 Procedure e Function

1042 palavras 5 páginas
SUBPROGRAMAS

1- Procedure
As procedures são rotinas chamadas pelo programa principal para executar alguma função específica, e sua sintaxe é:

PROCEDURE nome da procedure; declaração de variáveis locais;
BEGIN
comandos;
END;

ou

PROCEDURE nome da procedure (x, y: tipo dos dados); declaração de variáveis locais;
BEGIN
comandos;
END;

No caso 1, a procedure é chamada escrevendo apensas seu nome no programa principal, assim a execução é desviada até a procedure para que esta seja executada.

No caso 2, a procedure é chamada escrevendo seu nome e seus parâmetros no programa principal, assim a execução é desviada até a procedure para que esta seja executada.

Exemplo de procedure sem parâmetros:

PROGRAM EXEMPLO10;

VAR I, P, NUM, CONT: INTEGER; PROCEDURE PAR; BEGIN CONT:=0; P:=0; WHILE CONT<=NUM DO BEGIN P:=P+1; CONT:=CONT+2; END; END; PROCEDURE IMPAR; BEGIN CONT:=1; I:=0; REPEAT IF NUM <> 0 THEN BEGIN I:=I+1; CONT:=CONT+2; END; UNTIL CONT>NUM; END; BEGIN {PROGRAMA PRINCIPAL} WRITELN ('DIGITE O NUMERO DO INTERVALO'); READLN (NUM); PAR; IMPAR; WRITELN ('QUANTIDADE DE PARES = ', P); WRITELN ('QUANTIDADE DE ÍMPARES = ', I); READLN; END.

Exemplo de procedure com parâmetros: PROGRAM EXEMPLO11; VAR I, COL1, COL2, LIN1, LIN2, X: INTEGER; PROCEDURE DESENHA (C1, C2, L1, L2: INTEGER); BEGIN FOR I:= C1 TO C2 DO BEGIN GOTOXY (I, L1); WRITE ('*'); END; FOR I:=L1 TO L2 DO BEGIN GOTOXY (C1, I); WRITELN ('*'); END; END; BEGIN {PROGRAMA PRINCIPAL} X:=0; REPEAT CLRSCR; X:=X+1; WRITELN ('DIGITE OS VALORES DAS BORDAS'); READLN (COL1, COL2, LIN1, LIN2); CLRSCR; DESENHA (COL1, COL2, LIN1, LIN2); READLN; UNTIL X = 5; END.

2- Function

Uma function tem a mesma função de uma procedure, ou seja, desvia a execução do programa principal para realizar uma tarefa específica, com uma única diferença: uma function sempre retorna um valor. A sintaxe de uma function é:

Relacionados