A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

MÓDULO 4- Subprogramas (Procedimentos e Funções)

Apresentações semelhantes


Apresentação em tema: "MÓDULO 4- Subprogramas (Procedimentos e Funções)"— Transcrição da apresentação:

1 MÓDULO 4- Subprogramas (Procedimentos e Funções)
Linguagens de Programação MÓDULO 4- Subprogramas (Procedimentos e Funções) 2010/2011 Pedro Lopes

2 Sumário Passagem de argumentos a parâmetros por valor e por referencia; Realização e Correcção de uma Ficha de Trabalho.

3 Aula Anterior

4 Objectivos Compreender a passagem de argumentos a parâmetros por valor; Compreender a passagem de argumentos a parâmetros por referencia.

5 Parâmetros e Argumentos
Os parâmetros são elementos semelhantes às variáveis, mas que são inseridos nos cabeçalhos dos subprogramas, procedimentos ou funções (dentro de parênteses) e que, depois, são usados nas chamadas a esses mesmos subprogramas. Os valores indicados no lugar dos parâmetros, quando se faz uma chamada a um subprograma, são chamados argumentos.

6 Parâmetros e Argumentos (cont.)
Por conseguinte: um parâmetro é um identificador que se inclui no cabeçalho de um subprograma, como se se tratasse de uma variável, portanto, sendo de um determinado tipo de dados; um argumento é um valor, uma expressão ou uma variável com que se faz a chamada a um subprograma, em correspondência com um determinado parâmetro com que esse subprograma foi definido no seu cabeçalho.

7 Parâmetros e Argumentos (cont.)
A utilização de parâmetros confere aos subprogramas enormes potencialidades no desenvolvimento de programas, sobretudo porque permite utilizar os subprogramas com diferentes valores, o que também se pode traduzir em acções diferenciadas. Um subprograma pode conter zero, um único parâmetro ou uma lista deles.

8 Parâmetros e Argumentos (cont.)
Em relação a cada parâmetro deve indicar-se o tipo de dados a que ele pertence, da mesma forma que se faz com as variáveis. Se os parâmetros forem do mesmo tipo, basta separá-los por vírgulas e indicar o tipo a que pertencem. No caso de existirem parâmetros de tipos diferentes, é necessário indicar o tipo de cada um e separá-los entre si por ponto e vírgula.

9 Parâmetros e Argumentos (cont.)
Uma chamada a um subprograma que tenha parâmetros tem de especificar tantos argumentos quantos os parâmetros com que o subprograma foi definido. Além disso, a ordem dos argumentos deve ter em conta a ordem dos parâmetros, bem como o tipo a que pertencem. Os argumentos utilizados nas chamadas a subprogramas podem ser valores directos, variáveis, expressões, etc, desde que compatíveis com os correspondentes parâmetros.

10 Passagem por Valor Até aqui, os subprogramas (procedimentos ou funções) com parâmetros foram sempre definidos de forma a que, no momento em que eram chamados, os argumentos indicados, mesmo tratando-se de variáveis, apenas passavam os seus valores para o lugar dos argumentos (e nunca as próprias variáveis). Esta forma de passar valores de argumentos a parâmetros é conhecida como passagem por valor.

11 Passagem por Referência
Em Pascal (como em outras linguagens de programação) existe uma outra forma de passagem de argumentos a parâmetros - chamada passagem por referência - em que: Na chamada aos subprogramas, os argumentos correspondentes aos parâmetros têm de ser obrigatoriamente variáveis e são estas que vão ocupar o lugar dos parâmetros.

12 Passagem por Referência (cont.)
Neste caso, o que realmente passa para dentro dos subprogramas não é apenas uma cópia dos valores das variáveis, mas as próprias variáveis. Assim, se os parâmetros sofrerem alterações nos seus valores, os valores das variáveis em causa também sofrem as mesmas alterações. No exemplo seguinte, no programa da direita, o procedimento Dobro também está definido com um parâmetro (Var X : Integer), mas, neste caso, a palavra Var indica que se pretende utilizar o método de passagem por referência.

13 Passagem por Valor e Referência
Em ambos os casos, o procedimento Dobro atribui ao parâmetro X a soma X+X, portanto o dobro do seu anterior valor. Em ambos os casos, a variável global N é utilizada como argumento na chamada ao procedimento Dobro. Porém, enquanto que, no programa da esquerda, a variável N mantém o seu valor inicial (5), no programa da direita essa mesma variável N vê o seu valor ser alterado de 5 para 10.

14 Passagem por Valor Program PassagemPValor; Var N: integer; Procedure Dobro (X:Integer); Begin X:=X+X; Writeln(‘X= ’,X); End; N:=5; Dobro(N); Writeln(‘N= ‘,N); End.

15 Passagem por Referência
Program PassagemPReferencia; Var N: integer; Procedure Dobro (Var X:Integer); Begin X:=X+X; Writeln(‘X= ’,X); End; N:=5; Dobro(N); Writeln(‘N= ‘,N); End.

16 Resumo da Aula

17 Aula Seguinte Revisões Realização e Correcção de uma Ficha de Trabalho.


Carregar ppt "MÓDULO 4- Subprogramas (Procedimentos e Funções)"

Apresentações semelhantes


Anúncios Google