Upload
marcoalves
View
215
Download
0
Embed Size (px)
DESCRIPTION
ok
Citation preview
1
Ir p/ primeira página
Paradigmas da Programação
Procedimentos & FunçõesProcedimentos & Funções
Ir p/ primeira página
ProcedimentosProcedimentos
O que é um procedimento?
Como de define um procedimento?
Como se usa um procedimento?
Qual a diferença entre um procedimento e uma função?
Passagem de parâmetros
Variáveis locais e globais
Ir p/ primeira página
O que é um procedimento ?O que é um procedimento ?
é uma parte de um programa que:
encapsula um conjunto de comandos e declarações
somente é executada quando é feita uma chamada
a chamada representa um comando do programa
após a execução retorna ao ponto de chamada
Ir p/ primeira página
Estrutura de Definição
é definida na seção var
possui um cabeçalho contendo
palavra chave Procedure e nome do procedimento
parâmetros de definição (opcional)
corpo do procedimento
variáveis locais
bloco de comandos
Exemplo de definição
Procedure TROCA(var a,b: integer);
varaux:integer;
beginaux:= a;a:=b;b:=aux;
end;
Ir p/ primeira página
Chamada de um procedimento
program testaProc;
var
x, y : integer;
begin
readln (x, y);
writeln(x,y)
troca (x, y);
writeln(x,y);
end.
Procedure TROCA
(var a,b: integer);
var
aux:integer;
begin
aux:= a;
a:=b;
b:=aux;
end;
definição de procedimento
variávellocal
Ir p/ primeira página
Procedimentos x Funções: sintaxeProcedimentos x Funções: sintaxe
Cabeçalho
função: possui tipo de resultado
Function Fat(Num:integer):longint
procedimento: não possui tipo
Procedure Troca(var x,y:integer);
Corpo
função: valor de retorno no nomeFat:= temp;
procedimento: não retorna valor no nome, apenas em seus parâmetros
b:=aux;
2
Ir p/ primeira página
Parâmetros de definição e Parâmetros de definição e argumentos de chamadaargumentos de chamada
Chamada de funções e procedimentos:
indica o nome e os argumentos usados para sua execução.
Os argumentos devem concordar com os parâmetros (definição) quanto a:
- tipo: mesmo tipo de dado
- numero: mesma quantidade
- ordem: os argumentos são associados aos parâmetros na mesma ordem
Chamada de função: representa um valor
Chamada de procedimento: representa um comando
Ir p/ primeira página
Passagem de parâmetros
Por Referência
Parâmetros de definição representam as mesmas variáveis usadas nos argumentos de chamada
Procedure TROCA
(var a,b: integer);
Troca (x,y);
Por Valor
Parâmetros de definição recebem uma cópia dos valores usados na chamada
Function Fat (num:integer):longint
valn := Fat (5);
x y
Ir p/ primeira página
Variáveis locais e globais Locais:
definidas na unidade em que são usadas
são criadas quando a unidade é executada e destruídas no final da execução
Globais:
definidas na unidade que contém a unidade em que são usadas
podem ser acessadas pelas unidades mais internas
Program q;
var resp :char;
Procedure Confere;
var temp: integer;
begin if char = ‘S’ then ... end;
LOCAL
GLOBAL