Escolar Documentos
Profissional Documentos
Cultura Documentos
Modularização:
Subprogramas
António Tembe
“procedures” ou procedimentos;
“functions” ou funções.
1
Procedimentos
• É um programa com vida própria, mas que, para ser processado, tem que ser
solicitado pelo programa principal que o contém, ou por outro subprograma, ou
por ele mesmo.
• Declaração:
• Exemplo:
Programa em PASCAL para calculo da média aritmética entre duas notas.
a) Sem o uso de procedimentos;
b) Utilizando um procedimento.
2
Procedimentos
• Exemplos: Programa em PASCAL para calculo da média aritmética entre duas notas.
• Exemplo:
Programa em PASCAL para calculo da média dos elementos de um vector.
Nota: utilize um procedimento para ler os valores do vector e uma função para
efectuar o cálculo da média.
4
Funções
2
• Exemplos:
PROGRAM SOMA_VETOR; {Programa Principal}
CONST N = 30; BEGIN
VAR {ativa o procedimento LER_DADOS}
VETOR : ARRAY[1..N] OF integer; LER_DADOS;
{declaração do procedimento} {escreve o resultado, chamando a função MEDIA}
PROCEDURE LER_DADOS; WRITELN (MEDIA);
VAR I : integer; READKEY
BEGIN END.
FOR I:=1 TO N DO
As principais diferenças entre Procedimentos e Funções
READLN(VETOR[I]);
END; são:
{declaração da função} Uma função sempre devolverá um resultado.
FUNCTION MEDIA : integer; Um procedimento é usado como um comando qualquer.
VAR I,SOMA : integer;
BEGIN Uma função sempre fará parte de um comando ou de uma
expressão.
SOMA := 0;
FOR I:=1 TO N DO As funções retornam um, e somente um, valor ao
SOMA := SOMA + VETOR[I]; algoritmo chamador enquanto os procedimentos retornam
MEDIA := SOMA DIV N; zero (nenhum) ou mais valores ao algoritmo chamador.
END; 1 5
Variáveis Globais e Variáveis Locais
• Variáveis Globais
Uma variável é considerada global quando é declarada no início de um programa,
podendo ser utilizada por qualquer procedimento ou função. Assim sendo, este tipo de
variável passa a ser visível a todas as funções ou procedimentos.
• Exemplo:
PROGRAM Exemplo;
Uses CRT;
VAR x, y : Real; (* variáveis globais *)
• Variáveis Locais
são aquelas definidas dentro de um subprograma e, portanto, somente visíveis
(utilizáveis) dentro do mesmo. Outros subprogramas, ou mesmo o algoritmo principal,
não podem utilizá-las.
• Exemplo:
FUNCTION MEDIA : integer;
VAR I, SOMA : integer; (* variáveis locais *)
6
BEGIN
Parâmetros
• A passagem de parâmetros é feita com base no número e tipo de parâmetros
declarados; isto significa que os parâmetros devem:
Ser declarados como variáveis;
Na chamada (execução da procedure ou function) os parâmetros podem ser
números inteiros “constantes” ou duas variáveis inteiras, obviamente desde que
haja compatibilidade entre os parâmetros passados.
• A passagem de parâmetros pode ser feita de duas formas: passagem por valor
e passagem por referência.
PROCEDURE nome (lista de parâmetros)
FUNCTION nome (lista de parâmetros) : tipo
O fracasso é uma óptima oportunidade para começar de novo de forma mais inteligente.
Um ladrão rouba um tesouro, mas não furta a inteligência. Uma crise destrói uma herança, mas
não uma profissão. Não importa se você não tem dinheiro, você é uma pessoa rica, pois possui o
maior de todos os capitais: a sua inteligência. Invista nela. Estude!
Se não houver frutos, valeu a beleza das flores; se não houver flores, valeu a sombra das folhas; se
não houver folhas, valeu a intenção da semente.
10