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

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

Marco Antonio Montebello Júnior

Apresentações semelhantes


Apresentação em tema: "Marco Antonio Montebello Júnior"— Transcrição da apresentação:

1 Marco Antonio Montebello Júnior marco.antonio@aes.edu.br
Funções Lab. de Programação de Computadores Marco Antonio Montebello Júnior

2 Programação de Computadores - Laboratório
Funções Definições É um bloco de código do programa que pode ser usado diversas vezes em uma execução. Seção de código independente e autônoma, escrita para desempenhar uma tarefa específica. Programação de Computadores - Laboratório

3 Funções Características
Permite que o programa fique mais legível e melhor estruturado; Reutilização de código; Normalmente contém protótipo e definição da função; Cada função tem um nome único; Uma das características mais importantes da Linguagem C; Pode ter qualquer nome exceto main. Programação de Computadores - Laboratório

4 Variáveis Locais e Globais
Uma função pode chamar outras funções; O bloco que compreende o corpo da função (bloco entre { }) está escondido do resto do programa; Esse bloco não pode afetar nem ser afetado por outras partes do programa, a não ser que o código utilize variáveis globais. Programação de Computadores - Laboratório

5 Programação de Computadores - Laboratório
Variáveis Locais São declaradas dentro do main ou de uma função criada pelo usuário; Toda variável declarada dentro de um bloco { } podem ser referenciadas apenas dentro deste bloco; Existem apenas durante a execução do bloco de código no qual estão declaradas. Programação de Computadores - Laboratório

6 Programação de Computadores - Laboratório
Variáveis Globais São conhecidas por todo o programa; Podem ser utilizadas em qualquer parte do código; Permanecem com o seu valor durante toda a execução do programa; Deve ser declarada fora de qualquer função (até mesmo da função main). Programação de Computadores - Laboratório

7 Variáveis Locais e Globais
void Linha(int iTam); //Protótipo da função int iColuna; //Declaração de Variável GLOBAL main() //Função principal MAIN { int iValorLinha; //Declaração de Variável LOCAL ... iColuna = 10; Linha(iValorLinha); } void Linha(int iTam) //Definição da função int iCont; //Declaração de Variável LOCAL for(iCont = 0; iCont < iTam; iCont++) for(iCont = 0; iCont < iColuna; iCont++) Programação de Computadores - Laboratório

8 Programação de Computadores - Laboratório
Protótipo da Função Descrição da função que será definida posteriormente no programa. tipo_retorno <nome_da_função>(tipo_p <param1>, tipo <param2>, ...); tipo_retorno: tipo de dado que será retornado pela função; nome_da_função: nome que será dado a função, deve descrever resumidamente a funcionalidade da função; tipo_p e paramX: tipo e nome do(s) parâmetro(s) da função. Os parâmetros são separados por , (vírgula); Sempre termina com ; (ponto e vírgula). Programação de Computadores - Laboratório

9 Programação de Computadores - Laboratório
Protótipo da Função int iSoma (int iValorA, int iValorB); float fMedia (float fNota1, float fNota2); void Mensagem(); void Calculo(float fValorF, int iValorI, char cResp); Programação de Computadores - Laboratório

10 Definição / Declaração da Função
É a função propriamente dita; Composta de cabeçalho e corpo da função; O cabeçalho da função é idêntico ao protótipo com exceção do ; (ponto e vírgula); O corpo da função deve estar entre { ... }; Aparecem no mesmo código-fonte e após a função main() ou em arquivo independente. Programação de Computadores - Laboratório

11 Programação de Computadores - Laboratório
Definição da Função tipo_retorno <nome_da_função>(tipo_p <param1>, tipo <param2>, ...) { ... //Comando(s) } tipo_retorno: tipo de dado que será retornado pela função; nome_da_função: nome que será dado a função, deve descrever resumidamente a funcionalidade da função; tipo_p e paramX: tipo e nome do(s) parâmetro(s) da função. Os parâmetros são separados por , (virgula); Programação de Computadores - Laboratório

12 Programação de Computadores - Laboratório
Definição da Função int iSoma (int iValorA, int iValorB) { int iResultado; iResultado = iValorA + iValorB; return(iResultado); } void Mensagem() printf(“Minha 1a. Função em Linguagem C!!!”); Programação de Computadores - Laboratório

13 Funções – Exemplo Geral
Protótipo: float fMedia(float fNota1, float fNota2); Chamada: fMediaAluno = fMedia(10, 8); ou printf(“Resultado: %f!”, fMedia(5, 9)); Definição: float fMedia(float fNota1, float fNota2) { float fMed; fMed = (fNota1 + fNota2)/2; return(fMed); //return((fVal1 + fVal2)/2); } Programação de Computadores - Laboratório

14 Parâmetros e Argumentos
Entradas que a função recebe; Guardadores de lugar para um argumento; Fixos; Contém tipo e o nome do(s) dado(s); Argumentos Valores reais Programação de Computadores - Laboratório

15 Passagem de parâmetros por Valor
Valor de um argumento é copiado para o parâmetro formal da função; As alterações no processamento não alteram as variáveis. Protótipo: int iQuadrado(int iValor); Chamada: iResult = iQuadrado(10); Definição: int iQuadrado(int iValor) { int iTemp; iTemp = iValor * iValor; return(iTemp); } Programação de Computadores - Laboratório

16 Passagem de parâmetros Referência
Permite a alteração do valor de uma variável; É necessária a utilização de ponteiros; Protótipo: void iTroca(int *iValA, int *iValB); Chamada: iTroca(&iNumA, &iNumB); Definição: void iTroca(int *iValA, int *iValB) { int iTemp; iTemp = *iValA; *iValA = *iValB; *iValB = iTemp; } Programação de Computadores - Laboratório

17 Funções que NÃO retornam valores
São declaradas como void; O corpo da função contém apenas instruções e comandos. Protótipo: void Mensagem(int iVezes); Chamada: Mensagem(5); Definição: void Mensagem (int iVezes) { int i; for(i = 0; i < iVezes; i++) printf(“Ola mundo %i”, i); } Programação de Computadores - Laboratório

18 Funções que RETORNAM valores
São declaradas como char, int, float ou double; O valor do retorno deve ser armazenado em uma variável; O corpo da função além das instruções e comandos contém sempre o comando return. Programação de Computadores - Laboratório

19 Funções que RETORNAM valores
Protótipo: float fSoma(float fVal1, float fVal2); Chamada: fResultado = fSoma(10, 20); ou printf(“Resultado: %f!”, fSoma(15, 35)); Definição: float fSoma(float fVal1, float fVal2) { float fRes; fRes = fVal1 + fVal2; return(fRes); //return(fVal1 + fVal2); } Programação de Computadores - Laboratório

20 Programação de Computadores - Laboratório
Exercícios Criar uma função para exibir uma mensagem qualquer na tela. Escrever uma função que calcule a média 2 números do tipo float e retorne o valor calculado da média; Criar uma função que calcula uma equação do 2o. Grau Programação de Computadores - Laboratório

21 Programação de Computadores - Laboratório
Exercícios Criar uma função que converte a temperatura de graus Celsius para Fahrenheit ou vice-versa c= 5.0 / 9.0 * (f-32). f = 9.0 / 5.0 * c + 32 Criar um programa calculadora, utilizando funções para somar, subtrair, multiplicar e dividir Criar uma função que calcule o fatorial de um número fornecido pelo usuário. Programação de Computadores - Laboratório


Carregar ppt "Marco Antonio Montebello Júnior"

Apresentações semelhantes


Anúncios Google