F UNÇÕES : PASSAGEM DE PARÂMETROS Aluno:Kaynã Vasconcelos Santos Matéria: Estrutura de dados e algoritmos I Turma: 020200 Professor: Danilo Silva dos Santos.

Slides:



Advertisements
Apresentações semelhantes
Funções em C Prof. Fabiano Utiyama.
Advertisements

Técnicas de Programação II Revisão TP1 Parte2
Capítulo II – Algoritmos e Programas
V Procedimentos – são estruturas que agrupam um conjunto de comandos, que são executados quando o procedimento é chamado. v Funções – são procedimentos.
Funções em C.
Programação II Estruturas de Dados Aula 01
Programação II Estruturas de Dados
Algoritmos e Programação Linguagens de Programação Teoria Aula (09/06)
Algoritmos e Estrutura de Dados I
Aula 1 Tipo Abstrato de Dados
LINGUAGEM C.
LINGUAGEM ESTRUTURADA TURBO C
Universidade Federal do Espírito Santo
Linguagem C Funções.
Vetores, Matrizes e Funções
Vetores, Matrizes e Funções
Estruturas de Dados Homogêneas Unidimensionais – Vetores e Strings
Linguagem C.
Estruturas de Dados Homogêneas Multidimensionais – Matrizes
Matrizes e Funções - Continuação
APRESENTAÇÃO: GIANCARLO DE GUSMÃO GONÇALVES CURSO DE C AULA 08: Tipos Estruturados.
Introdução a Computação e Cálculo Numérico
Prof. Natalia Castro Fernandes Mestrado em Telecomunicações – UFF 2º semestre/2012.
Prof. Natalia Castro Fernandes Mestrado em Telecomunicações – UFF 2º semestre/2012.
PROGRAMAÇÃO ESTRUTURADA II
PROGRAMAÇÃO ESTRUTURADA II
PROGRAMAÇÃO ESTRUTURADA II
Marco Antonio Montebello Júnior
Estrutura de dados II Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Aula 02 – BCC202 Tipo Abstrato de Dados Túlio Toffolo www. decom. ufop
Programação II Estruturas de Dados Aula 02 - continuação
Linguagem de programação I A Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Introdução à linguagem C
Técnicas de Desenvolvimento de Programas
Linguagem de Programação
Estruturas de Dados Aula 2: Estruturas Estáticas 07/04/2014.
Algoritmos - Profa. Alciléia1 Profa. Maria Alciléia Alves Rocha Funções em C 2011.
Modularização Dividir um problema em subproblemas Módulos menores facilita a depuração Dividir o desenvolvimento entre vários programadores “Reutilização”
Introdução à Linguagem C
Declarando e Chamando Funções
Algoritmos e Estrutura de Dados I Jean Carlo Mendes
 São utilizadas para dividir um código maior (mais complexo) em partes menores (mais simples).  Quando uma mesma tarefa é realizada várias vezes em um.
Joaquim José Hangalo  Podemos entender a memória do computador como um conjunto de células que armazenam informações.  Cada célula.
Aula prática 3 Aprofundando em Funções Parâmetros de uma função Uso do return Execução Variáveis Global, local e estática Monitoria de Introdução à.
CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2013
Revisão Luis Antonio Tavares
CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo IX Subprogramação e Recursividade.
Aula Prática 3 Funções Monitoria Introdução à Programação.
CES-10 INTRODUÇÃO À COMPUTAÇÃO
Linguagem de programação I A Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Algoritmos e Programação MC102 Prof. Paulo Miranda IC-UNICAMP Aula 15 Ponteiros.
Programação Computacional Aula 9: Meu primeiro programa em C
Introdução à Programação Engenharia da Computação Aula Prática 3 Funções Monitoria
Algoritmo e Estrutura de Dados I Introdução à Linguagem C Márcia Marra.
Ponteiros em C Prof. Kariston Pereira
Trechos de código que permitem reutilização de uma mesma tarefa. Qualquer código PHP pode estar contido no interior de uma função. Não se pode definir.
Estrutura de Dados Revisão Professor Luiz José Hoffmann Filho
Linguaguem de Programação II
PCI- Funções e Procedimentos Profa. Mercedes Gonzales Márquez.
Algoritmo e Estrutura de Dados I Aulas 15 – Linguagem C Alocação Dinâmica de Memória Márcia Marra
Algoritmos e Programação MC102 Prof. Paulo Miranda IC-UNICAMP Aula 15 Funções.
Linguagem de Programação
USP – ICMC – SSC SSC0300 2º Semestre 2015 Disciplina de Linguagem de Programação e Aplicações [ Eng. Elétrica / Eletrônica ] 1 Prof. Dr. Daniel Rodrigo.
PRE 1002 Éverlin Marques 2015/1.
Computação – Informática Aula N. 05 Prof. SIMÃO Jean Marcelo SIMÃO Linguagem C “Matrizes em C”
Fundamentos de Programação 1 Aula N. 02 Prof. SIMÃO Jean Marcelo SIMÃO Linguagem C “Laços de Repetição em C”
Fundamentos de Programação 1
Fundamentos de Programação 1 Slides 7 Prof. SIMÃO Jean Marcelo SIMÃO Linguagem C “Funções”
FUNÇÕES Dilvan Moreira (baseado em material de Z. Liang)
Fundamentos de Programação 1
Transcrição da apresentação:

F UNÇÕES : PASSAGEM DE PARÂMETROS Aluno:Kaynã Vasconcelos Santos Matéria: Estrutura de dados e algoritmos I Turma: Professor: Danilo Silva dos Santos

PASSAGEM DE PARÂMETROS A linguagem de programação C permite que os parâmetros sejam passados para as funções de duas maneiras, por valor e por referência.

P ASSAGEM POR VALOR A função recebe uma cópia da variável que é fornecida quando é chamada. Todas as alterações feitas dentro da função não afetarão os valores originais. O valor da expressão é calculado, e o valor resultante é passado para a execução da função.

E XEMPLO 1 #include int soma(int x, int y){ return(x+y);} int main(){ int a, b, c; a= 4; b=2; c=soma(a,b); printf("%d",c); printf }

P ASSAGEM POR VALOR É a forma mais comum utilizada para passagem de parâmetros. Considerando as funções trigonométricas, seno, cosseno e tangente. Podemos ter a função seno, recebendo o valor de um ângulo e devolvendo o seno desse ângulo. Se tivermos as funções seno e cosseno, podemos definir uma função tangente.

E XEMPLO 2 float seno (float angulo); float cosseno (float angulo); float tangente (float angulo) { float s, c; s = seno(angulo); c = cosseno(angulo); return s/c; }

P ASSAGEM POR VALOR Essa função calcula o seno antes de calcular o cosseno.Se a função seno modifica-se o valor do parâmetro angulo, o valor passado para a função cosseno seria diferente do valor original usado para o seno, e o resultado da função tangente estaria incorreto. A passagem por valor evita esse tipo de erro através da criação de variáveis locais para os parâmetros. Quando uma função é chamada, essas variáveis são carregadas, como em atribuições, antes do início da execução do corpo da função.

P ASSAGEM POR REFERÊNCIA Neste caso o que é enviado para a função é uma referência às variáveis utilizadas, e não uma simples cópia, pelo que as alterações realizadas dentro da função irão certamente alterar os valores contidos nessas variáveis.

E XEMPLO 1 #include void troca(int *a, int *b){ int temp; temp=*a; *a=*b; *b=temp; } int main(){ int a=2,b=3; printf("Antes de chamar a função :\na=%d\nb=%d\n",a,b); troca(&a,&b); printf("Depois de chamar a função:\na=%d\nb=%d\n",a,b); return 0; }

U TILIDADE :P ASSAGEM POR REFERENCIA Quando precisamos criar uma função que devolva mais de um valor, temos que definir esses parâmetros com um caractere '*' no protótipo da função, e ao chamar a função, os parâmetros utilizados na chamada correspondentes à saída precisam ser precedidos pelo caractere '&' para indicar que eles podem ser modificados pela função chamada. Um exemplo são funções que trabalham com números imaginários(precisam retornar 2 valores).

E XEMPLO 2 #include #include void complexo2 (float *r, float *t) { float real; real = (*r * *r) - (*t * *t); *t = 2 * *r * *t; *r = real; } void complexo2 (float *r, float *t); int main () { float a, b; printf ("Entre com um numero complexo (2 numeros inteiros): "); scanf("%f %f", &a, &b); complexo2 ( &a, &b); printf("O quadrado do número complexo é %f + i %f\n", a, b); system("pause"); return 0; }