Академический Документы
Профессиональный Документы
Культура Документы
Funes e procedimentos
Objetivos da aula
Definio de funes e procedimentos. Declarando uma funo. Passagem de parmetros. Exemplos e aplicaes.
O comando return.
Funes
Funes
Declarao de uma funo em C/C++
<tipo> <nome_da_funo> (<lista_parmetros>) { /* Bloco de cdigos e declarao de variaveis */ return ; }
Programao II - Uniararas
Funes Definindo uma funo do usurio: float media(float a, float b) { float med; med = (a + b) / 2.0; return med; }
Exemplos
#include <iostream> #include <cstdlib> using namespace std; int dobro(int a) { return 2 * a; } int main(int argc, char * argv[]) { int c; c = 8; c = dobro(c); return 0; }
Programao II - Uniararas
Programao II - Uniararas
Funes.
O que significa o escopo de varivel? No exemplo anterior, qualquer varivel declarada dentro das funes sero visveis somente dentro de suas respectivas funes.
Programao II - Uniararas
variavel1 somente conhecida no contexto da funo main. Neste caso teramos erro de compilao.
variavel3 de main e minha_funcao, apesar de ter mesmo nome, representa espaos de memria diferentes
Programao II - Uniararas
enviar/receber dados, deve-se utilizar a lista de parmetros declarados entre parnteses. <tipo> <nome_funcao> (<lista_parmetros>)
Programao II - Uniararas
Funes.
Passagem de parmetros Duas formas de passagem de parmetros:
Valor Representam valores numricos ou literais. Referncia Representam endereos de memria.
Programao II - Uniararas
Programao II - Uniararas
Funes.
Neste ponto, as duas funes do exemplo anterior podem agora enviar/receber dados a partir do parmetro variavel_externa.
int minha_funcao (int variavel _externa) { } int main (int argc, char *argv[ ] ) { int variavel1; minha_funcao(variavel1); return 0; } Escopo da funo main Chamada da funo minha_funcao. Escopo da funo minha_funcao
Programao II - Uniararas
Programao II - Uniararas
Programao II - Uniararas
Funes.
Uma primeira abordagem, passando parmetros por valor e usando um tipo de retorno.
float f (float x) { float divisao; divisao = 1/x; return (divisao + 4); }
Programao II - Uniararas