Sei sulla pagina 1di 19

Anhanguera Educacional

Analise e Desenvolvimento de Sistemas

Trabalho
curso

complementar
de

Analise

do
e

Desenvolvimento de sistemas
da matria de Programao
Estruturada,

da

faculdade

Anhanguera. Sobe orientao


do Professor Marcos.

Osasco SP
2015

SUMARIO

Introduo............................................................................................................3
Passo 2..........................................................................................................4 a 9
Passo 3......................................................................................................10 a 14
Passo 4......................................................................................................15 a 18
Referencias........................................................................................................19

Introduo

1- Resumo

Passo 2

Na linguagem de programao C, existe permisso para que os


parmetros sejam passados para as funes de duas formas, sendo elas por
valor e por referncia.

1.0 Funes
A definio de funo em linguagem C, nada mais do que uma
subrotina usada em um programa. Denominado funo que um conjunto de
cdigos ou reconhecido por muitos de comando, executa a tarefa especfica
em um mdulo dependente de cdigo. A funo tem como sua principal
utilizao modularizar programas em linguagem de programao estruturada.

Subrotina: uma parcela de cdigo computacional que executa uma


tarefa bem definida, sendo que essa tarefa pode ser executada
(chamada) diversas vezes em um mesmo programa.

1.1 Parmetros dentro da tecnologia da informao


Especificamente na linguagem C, logicamente enquadrando suas
atividades em tecnologia da informao, os parmetros so como um valor
atribudo pelo utilizador sendo representado por uma funo especfica. Tendo
como objetivo modificar ou ajustar determinado comando atribudo. No muito
comum, mas quando um parmetro no definido pelo utilizador logo
escolhido um parmetro automaticamente pelo programa, parmetros so os
cdigos que est dentro dos parnteses nos mtodos e funes nas linguagens
de programao, sendo muito utilizado como sinnimo de argumento.

1.2 Parmetros de uma funo


Tendo visto o significado de funes e parmetros, agora possvel
entender que os parmetros so as variveis declaradas diretamente no
cabealho das funes, Desta forma pode ser visto que sua finalidade
realizar comunicao entre as funes e a funo principal.

Cdigo da funo executado, logo abaixo programa sendo executado.

Nas imagens acima foi realizado a funo soma.

1.3 Passagens de parmetros

Existem dois mtodos no qual pode realizar a passagem de parmetros


para funes, so elas a passagem de parmetros por valor e por referncia.
A passagem de parmetro por valor o primeiro mtodo por ser de certa
forma simples e limitada, entende-se que copiado a varivel ou argumentos
por alterar dentro da funo a varivel e ainda sim no gerar alterao.

A seguir um exemplo de passagem de parmetro por valor:

Cdigo da passagem de valor.

Imagem acima mostra o programa de linguagem C executando cdigo


de passagem de parmetro por valor.

A passagem de parmetro por referncia o segundo mtodo, que


ocorre a alterao no valor quando executa a funo refletindo valor de
parmetros reais. Na linguagem C no feito a passagem de parmetro por
referncia automaticamente, pois necessrio ser simulada atravs da
utilizao de ponteiros, ao invs de passa a varivel como parmetro passa-se
o endereo desta varivel, desta forma a funo que recebe utiliza o valor de
forma indireta caso seja alterado ser refletido fora da funo.

A seguir exemplo de passagem de parmetro por referncia:

Cdigo de passagem de parmetro por referncia.

Programa de linguagem C executando cdigo de passagem por referncia.

1.4 Ponteiros

Ponteiros so 'variveis' que guardam um endereo de memria.

Os ints guardam inteiros.

Os floats guardam nmeros de ponto flutuante (real).

Os chars guardam caracteres.


.

Quando voc anota o endereo de algum, posteriormente voc ter um


acesso fcil e rpido a este endereo. O C funciona assim. Voc anota o
endereo de algo numa varivel ponteiro para depois usar. Da mesma maneira,
uma agenda, onde so guardados endereos de vrios amigos, poderia ser
vista como sendo uma matriz de ponteiros no C.
Um ponteiro tambm tem tipo. Veja: quando voc anota um endereo de um
amigo voc o trata diferente de quando voc anota o endereo de uma firma.
Apesar de o endereo dos dois locais conterem o mesmo formato (rua,
nmero, bairro, cidade, etc.) eles indicam local cujos contedos so diferentes.
Ento os dois endereos so ponteiros de tipos diferentes.
No C quando declaramos ponteiros ns informamos ao compilador para
que varivel vamos apont-lo. Um ponteiro int aponta para um inteiro, sendo
ento, guarda o endereo de um inteiro. Logo outros tipos apontaro para
outros tipos de contedos.

/ Passo 3 /

1 Programa que mostra o valor atribudo a cada varivel.


2 Programa que calcula o reajuste do salario mais a bonificao,
especificando valor ao final do programa.
3 Programa que calcula a rea do triangulo.

Funo por valor // Exerccio 2

10

Funo por valor // Exerccio 3

Funo Simples // Exerccio 1

11

Funo por referencia // Exerccio 3

Funo por referencia // Exerccio 2

12

Print dos programas funcionando.


Exerccio 2

Exerccio 3

13

Exerccio 1

14

Passo 3
Captulo 1 Funes Passagem de Parmetro por Valor e Referncia

1. Captulo sobre Funes Passagem de Parmetro por Valor e


Referncia
2. Problemas, no formato de exerccios, que abordam os assuntos
estudados
3. Implementao, em Linguagem C, de todos os problemas
propostos apresentando a sada de cada um dos programas.

Funo uma subrotina usada em um programa, na linguagem C,


funo denominada um conjunto de comandos que realiza uma tarefa
especfica em um mdulo dependente de cdigo.

Uma funo referenciada pelo programa principal atravs do nome que


foi atribudo a ela.

A utilizao de funes visa dividir um programa em varias partes o que


muito comum na programao estruturada, na qual cada funo realiza uma
tarefa bem definida.

Os parmetros so variveis declaradas no cabealho da funo e tem


como finalidade fazer a comunicao entre as funes e funo principal.

15

A linguagem C permite que os parmetros sejam passados para as


funes de duas maneiras:

Passagem por valor: a forma mais comum utilizada para passagem de


parmetros.

Exemplo: Vamos considerar uma famlia trigonomtrica sendo seno,


cosseno, etc. Sendo desta forma a funo seno recebe o valor de um ngulo. E
devolve o seno deste ngulo.

Se tivermos as funes seno e cosseno, facilmente ser definida uma


funo tangente.

Em grandes projetos de desenvolvimento de software, um grupo de


programadores pode trabalhar com desenvolvimentos de funes distintos,
para juntar os trabalhos uma vez que tenham as funes prontas.

Neste caso necessrio que cada grupo conhea o prottipo das


funes que desejam utilizar.

float seno (float angulo);


float cosseno (float angulo);

Aps conhecermos os prottipos podemos escrever a funo tangente


da seguinte forma:
float tangente (float angulo)
{
float s, c;
s = seno(angulo);
c = cosseno(angulo);
return s/c;
}
16

A funo acima calcula o seno antes mesmo de calcular o seno antes de


calcular o cosseno, se esta funo seno fosse modificada o valor do parmetro
ngulo. Nesse caso, o valor passado para a funo cosseno seria diferente do
valor usado para o seno, o resultado da funo tangente estaria incorreto.

J neste caso, a passagem por valor consegue evitar este tipo de efeito,
criando variveis locais para os parmetros.

Quando uma funo chamada, suas variveis so carregadas antes de


iniciar a execuo do corpo da funo.

necessrio sempre que possvel utilizar a forma de passagem por


valor para evitar efeitos colaterais.

Mais tem algumas situaes que estes efeitos so desejveis, quando


desejamos criar uma funo que retorne mais de um valor.

Funes do tipo void, so funes que no retornam um valor, porem o


* indicam que este parmetro podem ser modificados dentro da funo ou
seja, alteraes que esses parmetros sofrem so sentidas fora da funo.

17

Segue abaixo um programa que utiliza esta funo:

Observe que declarada nas mais apenas duas variveis reais a e b,


tanto na chamada de funo scanf quanto na chamada de funo complexo2,
as variveis a e b so precedidas pelo caractere &.

Quando desejamos criar uma funo que devolva mais de um valor,


preiso definir esses parmetro com um caractere *no prottipo da funo, ao
chamar a funo os parmetros utilizados na chamadas correspondente a
sada precisam ser precedido pelo caractere & que indica que eles podem ser
modificados pela funo chama.
O exemplo abaixo ilustra a passagem por valor e por referencia:

18

Referncias bibliogrficas:

http://linguagemc.com.br/funcoes-em-c/
http://sistemas.riopomba.ifsudestemg.edu.br/dcc/materiais/2094972596_Proced
imentos%20e%20Funcoes_Lucia%20Helena.pdf
http://www.significados.com.br/parametro/
https://www.inf.pucrs.br/~manssour/LinguagemC++/PassagemParam.pdf
https://www.ime.usp.br/~elo/IntroducaoCompuacao/Funcoes%20passagem
%20de/20parametros.htm
http://www2.ic.uff.br/~hcgl/passagem_parametro.htm
http://www.ime.usp.br/~elo/IntroducaoComputacao/Funcoes%20passagem
%20de%20parametros.htm
http://linguagemc.com.br/funcoes-em-c/

19

Potrebbero piacerti anche