0% acharam este documento útil (0 voto)
54 visualizações5 páginas

Parametros Algoritimos

Este documento apresenta um resumo de três frases do capítulo 9 do livro "Algoritmos e Programação com Exemplos em Pascal e C" de Nina Edelweiss e Maria Aparecida Castro Livi. O capítulo discute subprogramas, incluindo a definição e chamada de subprogramas, parâmetros de entrada e saída, passagem de parâmetros por valor ou referência e declarações locais versus globais.

Enviado por

Pablo Silva
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
54 visualizações5 páginas

Parametros Algoritimos

Este documento apresenta um resumo de três frases do capítulo 9 do livro "Algoritmos e Programação com Exemplos em Pascal e C" de Nina Edelweiss e Maria Aparecida Castro Livi. O capítulo discute subprogramas, incluindo a definição e chamada de subprogramas, parâmetros de entrada e saída, passagem de parâmetros por valor ou referência e declarações locais versus globais.

Enviado por

Pablo Silva
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
Você está na página 1/ 5

23

série livros didáticos informática ufrgs

algoritmos
e programação
com exemplos em Pascal e C

nina edelweiss
maria aparecida castro livi
as autoras
Nina Edelweiss é engenheira eletricista e doutora em Ciência da Computação pela Uni-
versidade Federal do Rio Grande do Sul. Durante muitos anos, lecionou em cursos de Enge-
nharia e de Ciência da Computação na UFRGS, na UFSC e na PUCRS. Foi, ainda, orientadora
do Programa de Pós-Graduação em Ciência da Computação da UFRGS. É coautora de três
livros, tendo publicado diversos artigos em periódicos e em anais de congressos nacionais
e internacionais. Participou de diversos projetos de pesquisa financiados por agências de
fomento como CNPq e FAPERGS, desenvolvendo pesquisas nas áreas de bancos de dados e
desenvolvimento de software.
Maria Aparecida Castro Livi é licenciada e bacharel em Letras, e mestre em Ciência da
Computação pela Universidade Federal do Rio Grande do Sul. Desenvolveu sua carreira pro-
fissional na UFRGS, onde foi programadora e analista de sistema, antes de ingressar na
carreira docente. Ministrou por vários anos a disciplina de Algoritmos e Programação para
alunos dos cursos de Engenharia da Computação e Ciência da Computação. Sua área de
interesse prioritário é o ensino de Linguagens de Programação, tanto de forma presencial
quanto a distância.

E22a Edelweiss, Nina.


Algoritmos e programação com exemplos em Pascal e C
[recurso eletrônico] / Nina Edelweiss, Maria Aparecida Castro
Livi. – Dados eletrônicos. – Porto Alegre : Bookman, 2014.

Editado também como livro impresso em 2014.


ISBN 978-85-8260-190-7

1. Informática. 2. Algoritmos – Programação. I. Livi,


Maria Aparecida Castro. II. Título.

CDU 004.421

Catalogação na publicação: Ana Paula M. Magnus – CRB 10/2052

Edelweiss_Iniciais_eletronica.indd ii 14/05/14 16:51


Capítulo 9 Subprogramas 241

declaradas as variáveis inteiras int1 e int2, os seguintes comandos podem ser utilizados para
chamar o subprograma Fatorial:
execute Fatorial (5)
execute Fatorial (int1)
execute Fatorial (int1 + int2)
Na primeira chamada, o parâmetro formal número é substituído pelo valor 5; na segunda
chamada, número é substituído pela variável int1; e, na última chamada, número é substi-
tuído pelo resultado da expressão int1 + int2.

9.3.2 parâmetros de entrada e de saída

A utilização de um subprograma só é efetiva se for claramente definida a tarefa que será


executada e qual sua interação com o programa que o acionou. Para que isso seja possível,
é importante que toda a interação seja feita somente através dos parâmetros, identificando
quais os parâmetros de entrada (que recebem variáveis ou valores para executar a tarefa)
e quais os parâmetros de saída (que devolvem os valores calculados ao programa que
acionou o subprograma).
No exemplo anterior, do subprograma que calcula o fatorial, não foi definido como o resulta-
do deveria ser devolvido ao programa. Um segundo parâmetro deve ser definido, por meio do
qual será informado o valor calculado para o fatorial. No cabeçalho da declaração do subpro-
grama devem ser identificados os parâmetros de entrada (que recebem variáveis ou valores
para a execução) e os de saída (que devolvem valores):
Subprograma Fatorial
Parâmetro de entrada: número (inteiro)
Parâmetro de saída: fat (inteiro)
As chamadas a Fatorial devem fornecer agora dois parâmetros reais, sendo o primeiro
parâmetro o número para o qual se quer calcular o fatorial, e o segundo, o nome de uma
variável na qual será devolvido o resultado:
execute Fatorial (4, int1)
execute Fatorial (int1 + 7, int1)
Na primeira chamada, o resultado do cálculo do fatorial de 4 é devolvido através da variável
int1; na segunda chamada, o conteúdo da variável int1 é alterado após a execução, pas-
sando a conter o valor do fatorial do valor que armazenava anteriormente somado com a
constante 7.

9.3.3 parâmetros por valor ou por referência

A passagem de valores a subprogramas pode acontecer por valor ou por referência.


A passagem por valor indica que somente o valor interessa ao subprograma. Se esse valor for
passado por meio do nome de uma variável, somente o valor da variável é transferido para o

Edelweiss_09.indd 241 12/03/14 09:02


242 Algoritmos e Programação com Exemplos em Pascal e C

parâmetro. Uma cópia do conteúdo da variável é carregada em uma variável auxiliar, que será
utilizada durante a execução do subprograma. Dessa forma, qualquer modificação no valor
da variável auxiliar não se refletirá na variável utilizada como parâmetro real. A passagem de
valores para parâmetros definidos por valor pode ser feita ainda por meio de um valor literal e
do resultado de uma expressão. Na execução da chamada a um subprograma, os parâmetros
passados por valor também são incluídos na pilha de execução, preservando seus valores para
a continuação posterior da execução.
Na passagem de um parâmetro por referência, o endereço físico da variável utilizada como
parâmetro real é passado ao subprograma, sendo essa variável utilizada durante a execução.
Alterações no valor do parâmetro são feitas diretamente nessa variável. Na chamada de um
subprograma, os parâmetros definidos por referência recebem nomes de variáveis existentes
no programa principal. É importante observar que, na execução de uma chamada ao subpro-
grama, os parâmetros por referência não sofrem empilhamento, já que não são locais aos
subprogramas.
No exemplo anterior do subprograma Fatorial, o primeiro parâmetro – de entrada – é pas-
sado por valor. O segundo, que devolve o valor calculado, deve ser definido por referência.
Na pseudolinguagem, um parâmetro passado por referência é identificado pela palavra ref
antes de seu nome:
Subprograma Fatorial
Parâmetro de entrada: número (inteiro)
Parâmetro de saída: ref fat (inteiro)

9.4 declarações locais e globais


Dentro de um subprograma, podem ser feitas declarações de constantes, tipo e variáveis. As
declarações feitas internamente aos subprogramas são declarações locais ao subprograma,
e só são visíveis dentro do subprograma. As áreas de memória associadas às variáveis locais
são alocadas no momento em que o subprograma é acionado e são liberadas ao final de sua
execução, quando deixam de existir. Todo esse processo de criação e destruição de variáveis
locais ocorre novamente a cada nova chamada ao subprograma.
Como exemplo de utilização de uma variável local, será considerado um subprograma que
permuta o conteúdo de duas variáveis inteiras. Os parâmetros formais A e B representam
as duas variáveis e, neste exemplo, desempenham o papel tanto de parâmetros de entrada
quanto de saída. Para fazer a permuta é necessário uma terceira variável para guardar um
dos valores durante o processamento. Essa será definida como uma variável local, pois sua
existência não é relevante para o programa principal:
Subprograma Permuta
{TROCA O CONTEÚDO DE DUAS VARIÁVEIS}
Parâmetros entrada e saída: ref A, ref B (inteiro)
Variável: aux (inteiro) {VARIÁVEL LOCAL}

Edelweiss_09.indd 242 12/03/14 09:02


Encerra aqui o trecho do livro disponibilizado para
esta Unidade de Aprendizagem. Na Biblioteca Virtual
da Instituição, você encontra a obra na íntegra.

Você também pode gostar

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy